2014-12-10 2 views
2

스프링으로 정의되고 스프링으로 프록시 된 클래스를 모의 테스트 할 수 있습니까? 스프링 프록시는 easymock 생성 된 프록시와 동일한 클래스 이름을 사용하기 때문에 CGLib을 사용하여 프록시를 사용하기 때문에 지속적으로 중복 클래스 정의 문제가 발생합니다.스프링 CGLib과 EasyMock - 중복 클래스 정의 시도

왜 같은 이름을 생성합니까? 랜덤 이름을 생성 할 수없는 이유는 무엇입니까? 이것을 작동시키기위한 설정이 있습니까?

다음을 사용 중입니다.

봄 3.0
EasyMock에 3.2
CGLIB 2.2.2 (nodep)

참고 : Easymock3 Spring4.0.0.RELEASE cglib compatibility

답변

2

모두 독립적으로 클래스의 이름을 계산하는 DefaultNamingPolicy을 사용하고 있기 때문에이 오류가 발생합니다 제공된 인터셉터의 해시 코드에서. 이 명명 정책은 중복 이름을 감지하지만이 이름은 does not seem to work입니다. 그러므로이 충돌을 해결하기 위해 Spring 또는 EasyMock 내에서 다른 명명 정책을 설정해야합니다.