繁体   English   中英

如何在Android Test-Project(蚂蚁构建)中引用库项目

[英]How can I reference library project in an Android Test-Project (ant build)

有3个项目:

  1. 主要项目
  2. main引用的库项目(ActionBarSherlock)
  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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM