我在我的专案中使用了Mockito
@Config(manifest=Config.NONE)
@RunWith(RobolectricTestRunner.class)
public class BaseTest {
public final Application application;
public final Debugger debugger;
@Rule
public MockitoRule mockitoRule = MockitoJUnit.rule();
public BaseTest() {
super();
Debugger.setIsUnitTest(true);
application = RuntimeEnvironment.application;
debugger = new Debugger(this);
}
// Some other common code
}
然后我使用BaseTest扩展所有测试类。
当我在本地运行测试时,测试运行正常 但是当我对詹金斯做同样的事情
19:20:22 cant.tell.package.fragments.vm.MyVMTest > Test FAILED
19:20:22 org.mockito.exceptions.base.MockitoException
19:20:22 Caused by: java.lang.IllegalStateException
19:20:22 Caused by: java.lang.ClassFormatError
上面的错误来自具有@Mock注释的对象的类, 其他作品都很好 在jenkins上运行测试,我正在执行shell命令
chmod +x gradlew
./gradlew clean
./gradlew testDebugUnitTest --stacktrace
任何帮助将不胜感激