带有Mockito测试的junit在本地可以运行,但不能在jenkins上运行(Android)

时间:2018-08-28 14:15:01

标签: android jenkins continuous-integration mockito continuous-deployment

我在我的专案中使用了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

任何帮助将不胜感激

0 个答案:

没有答案