2011-01-10 6 views
3

Spring과 선언적으로 클래스에 대한 조롱 프레임 워크를 사용하여 mock을 선언 할 수 있습니까? 스프링에서 사용할 수있는 표준 모의 객체가 있다는 것을 알고 있지만, 선언 클래스로 내 클래스를 조롱 할 수 있기를 바랍니다.Spring과 내 커스텀 의존성 조롱

그냥 잘못 확인하지 않을 것입니다. 아이디어는 특정 통합 측면을 제외한 모든 것을 조롱하고 싶은 모든 통합 테스트를 위해 JUnit 테스트와 Spring 구성을 함께 사용하는 것입니다. 테스트 (한 번에 하나씩 테스트)와 mock을 지정하는 반복되는 Java 코드의 양을 최소화하는 두 가지 다른 데이터 서비스에 대한 의존성이 있다고 가정 해보십시오.

답변

1

실제 XML을 포함하고 특별한 콩의 정의를 덮어 쓰는 특별한 context.xml을 사용하여 만들었습니다. 좋은 아이디어와 똑똑한 해결책이 있다는 것을 알게되어 기쁩니다.

+0

XML 파일을 여러 개로 나눌 수 있습니다. 동일하게 유지되는 빈과 테스트 및 프로덕션간에 변경되는 빈을 그룹화 한 다음 각 테스트에서 관련 XML 파일을 가져올 수 있습니다. – Chochos

0

진지하게 - 당신은 정말로 그 일을하고 싶지 않습니다.

내가이 일을 시도하는 프로젝트의 숫자를 보았다하고 난 당신이 봄 파일의

엄청난 수의, 약간 다른 각각으로 끝날 것을 약속하지만, 당신이 모르는 무엇을, 왜 . 스파게티 코드. "선언적"정의로 인해 개체가 너무 많이 수행되고 있는지 또는 잘못된 공동 작업자로 작업하고 있는지 파악할 수 없기 때문입니다. 그것은 이런 종류의 질문에 대답에 책을 바친 - 시스템의 경우

, 당신은 외부 서비스를 스텁 수있는 점의 수 ... 난 당신이 GOOS을 읽을 것을 권장합니다

있다. 거기에만 변경할 몇 콩, 그리고 모든 시험을 변경하려면

http://www.growing-object-oriented-software.com/

0

는 당신은 @primary 주석을 살펴있을 수 있습니다.

@Primary로 테스트의 특수 클래스에 주석을 달아야합니다. 그러면 실제 클래스가 "대체"됩니다. - 그러나 모든 테스트에서이 작업을 수행하려는 경우에만 사용하십시오.