문제

이클립스 3.7.2

방금 구현했습니다. @Rule 일부 JUnit 4 테스트에서는 이 테스트를 Eclipse에서 실행하면 MethodRule 메서드가 호출되지 않습니다.Eclipse 테스트 실행기가 다음을 인식하지 못하는 것과 같습니다. @Rule 구현하고 주석이 달린 필드에 대해 특별한 작업을 수행하지 않습니다. @Rule.

나는 심지어 다음과 같은 "표준" MethodRule을 사용해 보았습니다. org.junit.rules.TestName 하지만 제대로 작동하지 않습니다(테스트 이름이 인스턴스에 채워지지 않음).JavaDoc의 예제 테스트도 TestName Eclipse에서 실행하면 실패합니다.

뭔가 비결이라도 있는 걸까?Eclipse는 단순히 JUnit을 지원하지 않습니까? 규칙?

도움이 되었습니까?

해결책

누군가 문제의 프로젝트의 런타임 클래스 경로에 "필수"인 것처럼 보이는 JAR을 포함시킨 것으로 밝혀졌습니다.JAR에는 JUnit 패키지가 포함되어서는 안 됩니다!그래서 다음과 같은 무해한 이름의 JAR이 있습니다. our_runtime_library.jar JUnit, Spring의 알 수 없는(그러나 오래된) 버전과 함께 일부 앱별 코드가 포함되어 있으며 그 밖의 사항은 누가 알겠습니까?프로젝트를 단위 테스트로 실행할 때 Eclipse는 프로젝트가 빌드된 (Eclipse) 버전인 자체 버전 대신 해당 JAR에서 JUnit을 선택했습니다.

정말 엉망이네요.이제 이 일로 채찍질 50번을 받을 자격이 있는 사람이 누구인지 알아보겠습니다.

다른 팁

적어도 내 Eclipse(내장된 JUnit 4.8)에서는 작동해야 합니다.따라서 코드를 보여줄 수 있습니다.

추가로 JavaDoc은 다음과 같이 말합니다. Note that MethodRule is now deprecated, you should be using TestRule instead.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top