Android单元测试 - 解决和验证问题

Bil*_*ill 5 junit android unit-testing build

我只是改变了我的Android项目的构建方式,我的单元测试不再工作......我得到的错误就像

WARN/dalvikvm(575): VFY: unable to resolve static field X in .....
WARN/dalvikvm(575): VFY: unable to find class referenced in signature
Run Code Online (Sandbox Code Playgroud)

这些错误只来自我的单元测试,其中定义的类甚至看不到单元测试中定义的其他类.

在每个项目之前都有自己的目录,其中包含第三方jar文件的副本.我已经读过Dex使用引用做了奇怪的事情,但还是无法弄清楚如何解决这个问题.有一个更好的方法吗?我很想看到一个大型Android工作区的例子,其中有多个项目,jar引用等...

是否可以通过订单/出口调整来解决这个问题?

该项目的结构如下:

  • Eclipse Workspace(PROJECT_HOME类路径变量)
  • LIB
    • 第三方罐子
    • 的android.jar
  • Java项目A.
    • 在PROJECT_HOME中查找
  • Java项目B.
    • 在PROJECT_HOME中查找
    • 取决于项目A.
  • Android项目
    • 取决于A&B
    • 在PROJECT_HOME中查找
  • Android测试项目
    • 取决于A,B,Android项目
    • 在PROJECT_HOME中查找

Tho*_*nan 1

不要在测试项目中包含第 3 方 jar。只需将其导出到被测试项目中:项目属性->java构建路径->排序并导出。完成此操作后,您就可以进行清洁并且效果应该很好。