У меня возникла проблема при запуске тестов в моем проекте. Я использую JUnit, Mockito и PowerMock.
У меня есть тестовый класс, который я могу запустить из Android Studio и хорошо работает (6 из 6 работают). Но если вместо того, чтобы делать это из AS, я использую команду ./gradlew test, три из них не работают с ошибкой:
java.lang.NoClassDefFoundError at MyTestsClass.java:166
Обыскивая эту строку, я вижу, что это вызывает метод (поэтому я полагаю, что ошибка не совсем там, а где-то внутри вызова).
Как это может быть отказ от команды и работа от AS? В чем разница между этими двумя? Что могло быть причиной этой ошибки?
Это могло быть из-за ваших зависимостей.
Они не определены в тесте, который не скомпилируется. Например:
// Needed to compile
compileOnly 'com.madgag.spongycastle:prov:1.54.0.0'
// Needed to compile tests
testImplementation 'com.madgag.spongycastle:prov:1.54.0.0'
Может быть?
Да, это сработало. Я не понимал, что мне нужно это изменение, спасибо!
У меня такая же проблема, и я пока не могу найти решение. stackoverflow.com/questions/50985554/…