내 동료 프로그래머를위한 질문. SQL 문이 실제로 테이블을 자르지 않고 테이블을 잘라내는지 테스트해야합니다. 잘라 내기 전에 제약 조건을 비활성화해야한다는 것을 알고 있지만 테이블에 실제로 영구적 인 손상을주지 않으면 서 실제로 테이블을 잘라내는 방법을 잃어 버렸습니다.JUnit, 테이블 잘라내기를 테스트하는 방법
미안 이미 요청한 경우 죄송합니다. 미리 감사드립니다. 편집 : Maven, MyBatis, Oracle DB 및 Spring (Aspect, Batch)을 사용하고 있습니다. 또한 코드는 작동하지만 JUnit의 컨텍스트 내에서 메서드를 테스트해야합니다. 내가 어떻게 주장할지는 아직 또 다른 문제이다.
귀하의 DBMS에 따라 다릅니다. Postgres에서 잘라 내기를 수행하고 테이블이 비어 있는지 확인한 다음 롤백을 수행하여 잘라내기를 되돌릴 수 있습니다. –
테스트를 작성할 때 데이터베이스 상호 작용을 수행하려면 일반적으로 테스트 용으로 별도의 스키마를 만들고 각 테스트 사이에 스키마를 삭제하고 다시 생성 할 수도 있습니다. 이 방법은 내가 실제로 테이블에 해를 입히는 지 실제로는 신경 쓰지 않습니다. –
프로그램이 DB에 올바른 SQL 명령을 발행했는지 또는 SQL 명령이 DB에서 올바르게 작동하는지 테스트 하시겠습니까? –