[Node.js] 트랜잭션을 활용한 테스트 격리 환경 구현하기 (1/2) | 솔루션 찾기
트러블 슈팅2024. 7. 31. 18:49[Node.js] 트랜잭션을 활용한 테스트 격리 환경 구현하기 (1/2) | 솔루션 찾기

개요문제새로운 백엔드 팀원들이 합류하면서, 기존 코드를 수정할 때 의도치 않게 기능이 변경되는 문제가 발생했습니다. 새로운 기능 추가 후, 문서가 부족하여 기존 기능을 테스트하는 데에 어려움이 있었습니다.해결방안수동으로 테스트하던 작업을 자동화하기 위해, 테스트 코드 작성을 통해 회귀 버그를 검증했습니다. 또한 테스트 격리성을 확보하기 위해 QueryRunner를 사용하여 각 테스트에서 독립된 세션에서 실행되도록 하고, 테스트 종료 후에는 롤백하는 환경을 구축했습니다. 서론1부는 이론편, 2부는 실습편입니다.트랜잭션을 통해 테스트 격리성을 가져가고 싶었습니다.단, TypeORM에는 세션을 관리해주지 않아, 하나의 테스트만 실행해도 여러개의 세션이 연결됩니다.위 제약사항에 대한 접근방식 + 해결방법을 공유..

image