![](/img/trans.png)
[英]Can't build and run an android test project created using “ant create test-project” when tested project has jars in libs directory
[英]How can I reference library project in an Android Test-Project (ant build)
有3个项目:
Jenkins将这三个项目签出到工作区中的3个文件夹中。
但是,Robotium测试项目无法引用库项目:
如果仅使用标准的“ android update test-project”,则测试项目将无法编译,因为它间接引用了库项目
[javac] /home/jenkins_test/test/src/com/**********/test/core/**********TestCase.java:15: cannot access com.actionbarsherlock.app.SherlockFragmentActivity [javac] class file for com.actionbarsherlock.app.SherlockFragmentActivity not found [javac] ActivityInstrumentationTestCase2<Home> { [javac] ^ [javac] /home/jenkins_test/test/src/com/**********/test/core/**********TestCase.java:55: cannot find symbol [javac] symbol : constructor Solo(android.app.Instrumentation,com.**********.activity.Home) [javac] location: class com.jayway.android.robotium.solo.Solo [javac] solo = new Solo(getInstrumentation(), getActivity()); [javac] ^
“ Android更新测试项目”不具有--library标志支持
如果将android.library.reference.1 = .. / ActionBarSherlock添加到测试项目的project.properties,则测试项目可以编译,但在运行时会抱怨找不到主要活动的类(NoClassDefFoundError)
不幸的是,这在使用ant时失败,但是测试可以由Eclipse构建和运行。 您唯一需要考虑的是在测试项目中的Java Build Path- > Order and Export中检查robotium库。
并检查你的库项目是不是在测试项目的属性引用
如果要单独测试库项目,则可以按照android:测试库项目中描述的说明进行操作。
我知道这可能不是解决方案,因为您正在使用Jenkins,但至少它会让您从坚实的基础开始。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.