简单Android JUnit测试期间Robotium崩溃
我无法运行一个微不足道的Robotium测试:简单Android JUnit测试期间Robotium崩溃,android,testing,junit,robotium,Android,Testing,Junit,Robotium,我无法运行一个微不足道的Robotium测试: public class TapsTest extends ActivityUnitTestCase<Ad> { public TapsTest() { super(Ad.class); } Solo mSolo; @Override protected void setUp() throws Exception { super.setUp(); mSolo = new Solo(getInstrumentatio
public class TapsTest extends ActivityUnitTestCase<Ad> {
public TapsTest() { super(Ad.class); }
Solo mSolo;
@Override
protected void setUp() throws Exception {
super.setUp();
mSolo = new Solo(getInstrumentation(), getActivity());
}
public void testTabTaps() {
assertTrue(mSolo.searchText("Latest")); // NPE thrown here
}
}
在我的两台设备(Android 4.1.0和4.0.3)和ADV上,最初Robotium抱怨缺少V4支持库(我们不需要它用于其他目的),所以我添加了Android-support-v13.jar。现在,类not found异常已消失,但NPE仍然存在。我还尝试手动启动活动:
Ad ado = startActivity(new Intent("android.intent.action.MAIN"), null, null);
mSolo = new Solo(getInstrumentation(), ado);
但NPE仍然存在。我尝试了mSolo.searchButton(“Go”)
,在UI上有一个带有此文本的按钮,它是可见的,仍然是Robotium中第113行的NPE
如果未进行测试,应用程序本身将正确启动和运行。另外,其他ActivityUnitTestCase测试(不带Robotium)运行并通过时不会出现问题
我尝试从中使用robotium-solo-3.6.jar。是否有任何原因,您使用ActivityUnitTestCase? 您更应该使用ActivityInstrumentationTestCase2。 然后您必须更改构造函数-将包添加为参数。
请看这里:是否有任何原因,您使用ActivityUnitTestCase? 您更应该使用ActivityInstrumentationTestCase2。 然后您必须更改构造函数-将包添加为参数。 看这里:
Ad ado = startActivity(new Intent("android.intent.action.MAIN"), null, null);
mSolo = new Solo(getInstrumentation(), ado);