Я использую junit 4.12
, jmockit 1.19
& spring-test 4.1.1.RELEASE
для тестирования моего проекта MVC Spring MVC.JMockit не был правильно инициализирован
Порядок этих зависимостей в моей pom.xml
:
jmockit
junit
spring-test
Тестовые случаи для обслуживания слоя работает нормально. Я использую весенний тест только для тестирования контроллеров. Во время тестирования контроллера, я получил следующее сообщение об ошибке:
java.lang.IllegalStateException: JMockit wasn't properly initialized; please ensure that jmockit precedes junit in the runtime classpath, or use @RunWith(JMockit.class)
Для обслуживания слоя, я решил эту ошибку с помощью @RunWith(JMockit.class)
на тестовом классе.
Но для контроллера мне необходимо аннотировать @RunWith(SpringJUnit4ClassRunner.class)
.
Как устранить эту ошибку?
Примечание: Я ставлю перед тем jmockit
junit
в pom.xml
Если вы можете перейти на Spring Framework 4.2.1, теперь для JUnit _Rules_ существует первоклассная поддержка. Поэтому вам не нужен «SpringJUnit4ClassRunner»: http://docs.spring.io/spring/docs/current/spring-framework-reference/html/integration-testing.html#testcontext-junit4-rules –
Я считаю, что вы должен показать примерный тестовый класс и пример файла pom.xml, который воспроизводит проблему. Я тестировал эту комбинацию инструментов (jmockit, junit и spring-test), но не видел сбоев инициализации. –