NestJS, testando aplicações com Jest
vamos aprender sobre o NestJS, como foco no teste das aplicações focado na parte do Mongoose
Introdução
Express foi criando para facilitar a manipulação do NodeJS. Apesar de todas a facilidades, alguns pontos deixam a desejar. O NestJS foi criado para tentar melhorar esses pontos, como foi TypeScript para melhorar o JavaScript. Não vamos entrar nos pormenores, vamos direto ao ponto!😁😁
Apesar de que não vamos entrar nos pormenores, gostaria deste tutorial ser o mais completo possível, para facilitar o aprendizado!😎😎
Criando um aplicativo NestJS do zero
Adoraria fazer essa parte grande, para parecer que estou ensinando algo, contudo, somente uma linha de código e você tem uma aplicativo funcional!😂😂 Não dá para ganhar dinheiro dos trouxas assim! 🤣🤣
nest new project-name
Esta é uma aplicação funcional, tente:
npm start
Vai para a porta 3000
Contudo, vamos trabalhar com testes, rode:
npm run test:watch


Alguns pontos que merecem atenção🧐🧐:
ts
significa typescript , que é a linguagem base do Nest;service.ts
é um tipo de arquivo conhecido como serviço, base do Angular. Isso facilita o processo de mocar, além de facilitar a conexão como MongoDB por o fazer em background;
Abaixo, para efeito de curiosidade, uma arquivo de teste padrão. Como se pode ver, testes já é incorporado no Nest, ou seja, o Nest já nasceu pensando em TDD! 😍😎🥰
//app.controller.spec.ts
import { Test, TestingModule } from '@nestjs/testing';
import { AppController } from './app.controller';
import { AppService } from './app.service';
describe('AppController', () => {
let appController: AppController;
beforeEach(async () => {
const app: TestingModule = await Test.createTestingModule({
controllers: [AppController],
providers: [AppService],
}).compile();
appController = app.get<AppController>(AppController);
});
describe('root', () => {
it('should return "Hello World!"', () => {
expect(appController.getHello()).toBe('Hello World!');
});
});
});

O que vamos fazer é criar nossos próprios testes usando esses arquivos criados de forma automática.
Last updated
Was this helpful?