콘솔 내용
Test Suites: 1 passed, 1 total
Tests: 5 passed, 5 total
Snapshots: 0 total
Time: 1.527 s, estimated 2 s
Ran all test suites.
Jest did not exit one second after the test run has completed.
"This usually means that there are asynchronous operations that weren't stopped in your tests.
Consider running Jest with `--detectOpenHandles` to troubleshoot this issue."
테스트를 한 후에 뭔가를 멈추지 않았다고 한다.
콘솔에서 알려준대로 package.json 에서 "test:e2e" 에 --detectOpenHandles 추가
그 결과 해당 문구는 뜨지 않았다.
하지만 테스트가 끝나지 않아 내가 강제로 종료를 해야하는 상황이 발생.
이유는 Jest 공식문서: -- detectOpenHandles 를 참고해보니
이 옵션을 사용하면 성능이 저하되며 디버깅을 할때만 사용하라고 한다.
옵션을 추가하지 않고 해결하기 위해 다시 검색을 했다.
How To Fix: Jest Did Not Exit 에 따르면
나의 경우에는 app을 이용하여 연결을 하였지만 app 것을 끝내지 않아서 발생한 것 같다.
아래의 코드를 마지막에 추가하고 실행해보니 테스트가 끝나후 안전하게 종료 되었다.
afterAll(async () => {
await app.close();
});
e2e 테스트 중에 연결된 것 ( app, database) 은 테스트가 끝나면 모두 종료하자.
'프로그래밍 > Nest.js' 카테고리의 다른 글
[ Nest.js ] jest e2e : Given When Then (0) | 2024.09.08 |
---|---|
[ Nest.js ] jest 이용한 e2e 테스트 (0) | 2024.09.07 |
[ Nest.js] 의존성 주입을 사용하는 이유와 장점 (0) | 2024.08.17 |
[ Nest.js ] 대량의 데이터 삭제시 두가지 softDelete 방식 비교 (0) | 2024.07.23 |
[ Nest.js ] update vs createQueryBuilder vs query : 다량의 데이터 업데이트 속도 비교 (0) | 2024.07.22 |