- 가짜 데이터를 사용하는 방식으로 주로 DB에 실제로 데이터를 넣지 않기 위한 대체용으로 사용된다.
가짜 서비스 (MockingService)를 만들고,
providers 부분의 useClass에 MockingService를 넣어준다.
import { AppController } from './app.controller';
import { AppService } from './app.service';
import { Test, TestingModule } from '@nestjs/testing';
class MockAppService {
getHello(): string {
return '나는 가짜다!!!';
}
}
describe('AppController', () => {
let appController: AppController;
beforeEach(async () => {
const app: TestingModule = await Test.createTestingModule({
controllers: [AppController],
providers: [
{
provide: AppService,
useClass: MockAppService,
},
],
}).compile();
appController = app.get<AppController>(AppController);
});
describe('getHello', () => {
it('이 테스트의 검증 결과는 Hello World를 리턴해야함!!!', () => {
expect(appController.getHello()).toBe('Hello World!');
});
// it("테스트 2", () => {
// expect().toBe()
// })
});
// describe('fetchboards', () => {
// })
// describe('createBoard', () => {
// })
});
이렇게 하고 테스트를 돌려보면
이렇게 MockingService가 실행되는 모습이다.