미해결
따라하며 배우는 TDD 개발 [2023.11 업데이트]
통합 테스트에 관한 질문 이 있습니다.
안녕하세요 강사님 강의를 따라하며 통합테스트에 다음과 같은 코드에서 의문점이 생겼습니다.
통합테스트에서 데이터를 update나 delete를 할때 실제 db에 있는 데이터가 수정,삭제가 되는것을 확인했습니다.
지금은 TDD개발이라 테스트중에 사용되는 데이터라 상관이 없겠지만
만약에 실제 서비스중이거나 중요한 데이터를 다루는 api에 대한 통합 테스트를 할때에는 서비스 db의 의존성없이 가짜 데이터로 테스트를 해야하는데 통합테스트를 할때 그렇게 하는 방법은 없나요??
it('PUT /api/products', async () => {
const res = await request(app)
.put('/api/products/' + firstProduct._id)
.send({ name: 'updated name', description: 'updqted discription' });
expect(res.statusCode).toBe(200);
expect(res.body.name).toBe('updated name');
expect(res.body.description).toBe('updqted discription');
});