我只是想在Android JUnit测试中使用Robotium, 但测试始终失败并出现错误:
java.lang.NoClassDefFoundError:com.jayway.android.robotium.solo.Solo
抛出solo = new Solo(getInstrumentation(),getActivity());在setUp()方法中:
protected void setUp() throws Exception {
super.setUp();
solo = new Solo(getInstrumentation(), getActivity());
}
我在某处读到这可能与Android SDK修订版17有关,但我无法证实这一点,因为我第一次尝试使用SDK 17的Robotium。
Robotium jar正确添加到项目构建路径中。
有没有人遇到过类似的问题?
此致 ķ。
答案 0 :(得分:30)
我今天遇到了同样的问题。我通过将jar导入测试项目的libs目录然后将其添加到Build Path Libraries来解决:
TestProject属性 - > Java构建路径 - > Libreries - >添加JAR ... - > TestProject /库/ robotium-独奏-3.1.jar
答案 1 :(得分:25)
您需要转到属性 - >导出Robotium jar。 Java构建路径 - >订单和出口。然后检查Robotium jar文件。
答案 2 :(得分:8)
我做了这个配置来解决问题
注意:我把机器人放在第一位。
答案 3 :(得分:3)
在SDK 17上存在同样的问题。将robotium jar添加到lib并导出帮助。还必须将构造函数中已弃用的超级调用从super(String,Class)更改为super(Class)以使其工作。
答案 4 :(得分:2)
我为修复错误所做的是:
你很高兴!
答案 5 :(得分:2)
如果问题仍然存在,请重启你的日食。 即使在导入robotium.jar之后我也遇到了同样的问题但是在重新启动eclipse之后它运行正常。