인프런 커뮤니티 질문&답변

skehdxhd님의 프로필 이미지
skehdxhd

작성한 질문수

Practical Testing: 실용적인 테스트 가이드

Integration Test Truncate

작성

·

37

0

안녕하세요! 좋은 강의 잘 들었습니다!!

강의 듣고, 테스트 적용해보며 한가지 궁금한게 생겼는데요!

테스트 데이터 삭제의 건 입니다!

요구사항이 다음과 같다고 한다면, 어떤 방법을 내리실 지 궁금해서요!

 

  1. Test라는 별도의 환경 없음. 로컬 개발환경은 개발DB를 바라보는 상황

  2. JPA가 아닌 MyBatis

  3. Unit Test가 아닌 integration Test

혹시 이런 상황이라면, 테스트를 진행하며 추가되거나 변경된 데이터들을 어떻게 삭제할 수 있을까요 ??

더 나아가서는, 성능테스트를 진행한다면 별도의 Test 환경이 없을 때 성능테스트를 진행하며 생긴 대량의 데이터들을 어떻게 원래대로 원복 시킬 수 있을까요 ??

감사합니다!

답변 1

0

박우빈님의 프로필 이미지
박우빈
지식공유자

안녕하세요, skehdxhd 님!

일단 그런 전제라면, 테스트를 진행하지 않고 테스트하기 더 나은 방향으로 구조를 개선한 뒤에 테스팅을 진행할 것 같습니다만..ㅎㅎ

개발DB가 모두가 사용하는 공용 DB 라면, 테스트할 때마다 심혈을 기울여야 할 것 같아요.

그럼에도 한번 생각해보자면, 영향도를 최소화하기 위해 테스트를 시작하기 전에 신규 테이블을 생성하고, 테스트를 진행한 후에, 해당 테이블을 truncate 처리할 것 같네요.
성능 테스트도 마찬가지 입니다.
(2번 조건은 사용하는 도구의 차이이기 때문에 크게 상관 없을 것 같아요.)

그렇지만, 저라면 저런 환경에서 테스트를 진행하기 보다 빠르게 테스트 가능한 환경을 만드는데에 집중할 것 같아요.

감사합니다. 🙂

skehdxhd님의 프로필 이미지
skehdxhd

작성한 질문수

질문하기