gpt4 book ai didi

android - Robotium 测试找不到 Activity 类

转载 作者:太空狗 更新时间:2023-10-29 15:19:12 25 4
gpt4 key购买 nike

我一直在使用 robotium 来测试我的 android 应用程序。到目前为止,我发现它非常有用。最近我们做了一个重构,整个应用只使用一个activity,每个页面都会被一个fragment代替。

但是,在我们开始使用该 Activity 运行单元测试后,测试提示 NoClassDefound 错误——它找不到 Activity 类。我没有看到任何更改配置的地方。

任何人都可以提供可能出错的线索,在哪里检查等等?

[INFO]     java.lang.RuntimeException: Exception during suite construction
at android.test.suitebuilder.TestSuiteBuilder$FailedToCreateTests.testSuiteConstructionFailed(T estSuiteBuilder.java:239)
at java.lang.reflect.Method.invokeNative(Native Method)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:169)
at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:154)
at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:529)
....
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NoClassDefFoundError: com.xxx.wallet.HaloActivity
at com.xxx.wallet.HaloActivityTest.<init>(HaloActivityTest.java:12)
... 18 more

应用 apk 已加载,AndroidManifest.xml 应该也可以。

最佳答案

重构后确保:

测试项目的AndroidManifest.xml还是准确的:

<instrumentation android:targetPackage="package.of.the.app.under.test">

测试类仍然准确:

public class YourTest extends ActivityInstrumentationTestCase2<SplashScreenActivity> {
protected static final String TARGET_PACKAGE_ID = "package.of.the.app.under.test";

protected Solo solo;
public Test() {
super(TARGET_PACKAGE_ID, StartingActivityOfYourAppUnderTest.class);
}
//..
}

被测应用程序的所有库只能(!)在 libs/yourlibrary.jar 中找到,并在 Project->Properties->Java Build Path->Libraries 中引用

关于android - Robotium 测试找不到 Activity 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9677250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com