Почему я получаю NoClassDefFoundError при запуске JMockit Mocks?
я бегуJMockit сJunit 4 и получите ошибкуjava.lang.NoClassDefFoundError.
Я хочу проверить, как мой класс (mycomponent) работает со значениями, возвращаемыми из статического класса сторонней библиотеки. Я подхожу к этому, создавая класс mocked (mocked3rdpartycomponent) и затем вызывая mycomponent, как показано ниже:
mytest-> mycomponent-> mocked3rdpartycomponent
Насмешливый класс имеет определение следующим образом. Проверяемый метод и класс должны заменить ранее упомянутую стороннюю библиотеку:
new Mockup<MockedClass>() {
@Mock public ReturnType[] mockedMethod() {
ReturnType[] ni = {null};
return ni;
}
}
Mycomponent mc = new MyComponent();
Когда я запускаю свой тестовый класс, я получаю следующую ошибку:
java.lang.NoClassDefFoundError: mockit/internal/state/TestRun
at <MockedClass.mockedMethod>(MockedClass.java)
at <MyComponent>.<init>
caused by: java.lang.ClassNotFoundException: mockit.internal.state.TestRun
Редактировать: В дополнение к этому, если я попытаюсь перешагнуть вызов в тестируемом модуле, который должен вызвать мою подделку, появится экран, в котором говорится, что исходный код для Junit не может быть найден.
Редактировать: Сторонняя библиотека также является родной с некоторыми статическими методами.
Кто-нибудь знает, чем это может быть вызвано?
Моя среда - Eclipse Mars 4.5.0, JUnit 4.10, JMockit 1.19.
Спасибо!