2014-02-19 1 views
0

Functional Testing Suite를 작성하려고합니다. 이 테스트에서는 워크 플로우를 실행하기 위해 Rest 호출을 사용합니다 (테스트는 블랙 박스 테스트이며 나머지 인터페이스를 사용합니다). 나머지 애플리케이션은 Spring 3이며 Spring의 트랜잭션 관리 (DataSourceTransactionManager)를 사용한다. 개별 설정 및 분리 방법을 피하기 위해 트랜잭션을 롤백 가능하도록 만들려고했습니다.이 작업은 unit \ integration 테스트를 수행 할 때 @TransactionConfiguration (defaultRollback = true)을 사용하여 수행 할 수 있지만 직선적 인 방법을 알지 못합니다. (개별 휴식 전화이므로) 통합 테스트를 수행하는 중입니다.Functional Testing 수행 중 트랜잭션 관리 Spring Rest Interface

테스트중인 응용 프로그램은 단일 스레드가 아니며 여러 개의 동시 테스트 제품군이 동일한 데이터베이스 인스턴스 \ 응용 프로그램에서 동시에 실행될 수 있습니다.

예비 분석을 통해 스프링이 테스트 스위트의 모든 메소드에 대해 동일한 롤백 가능 트랜잭션을 사용하도록해야한다고 생각한다. (고유 식별자를 기반으로 트랜잭션을 리턴하는 Factory 메소드를 사용하는 것과 같다. 고유 한 요청 매개 변수 및 AOP를 사용하여 어떻게 든이 스레드에 대한 트랜잭션 삽입)

비슷한 작업을 수행 한 사람이 있습니까? 나는 정말로 약간의 아이디어에 감사 할 것입니다.

감사합니다.

답변

0

좋은 질문,

나는 내가 구현하는 것은 시간이 좀 걸릴 것 너무

당신

@Test 
@Transactional 
@Rollback(true) 

에 대해 다음 작품 경우 사용하시기 바랍니다 내 JUnit 테스트에서 트랜잭션을 사용할 계획입니다 이건 내 프로젝트지만, 희망이 필요하기 전에 도움이됩니다.

내가 읽은 한 가지 더 프로그램이 멀티 스레드입니다.

스프링으로 제공되는 격리 수준을 사용하지 않으시겠습니까? 그러나 나는 이것을 처리해야하는 개발자가 될 것이라고 생각한다.