Android 从Robotium Testcase中的错误线程异常调用
我正在为我的android应用程序编写测试用例,该应用程序有多种活动。应用程序在UI中实现Android 从Robotium Testcase中的错误线程异常调用,android,unit-testing,testing,junit,robotium,Android,Unit Testing,Testing,Junit,Robotium,我正在为我的android应用程序编写测试用例,该应用程序有多种活动。应用程序在UI中实现抽屉。但当solo打开抽屉时,它给出了从错误线程异常调用的异常。单击“ActionBar主页”时加载抽屉 public void test4Drawer() { solo1.clickOnActionBarHomeButton(); Boolean actual=solo1.searchText("About"); Boolean expected =true; assert
抽屉
。但当solo打开抽屉时,它给出了从错误线程异常调用的异常。单击“ActionBar主页”时加载抽屉
public void test4Drawer()
{
solo1.clickOnActionBarHomeButton();
Boolean actual=solo1.searchText("About");
Boolean expected =true;
assertEquals("Drawer Not Loaded",expected,actual);
}
在您的设置()中:
在您的测试用例中,添加以下内容:
mActivity.runOnUiThread(new Runnable() {
public void run() {
solo1.clickOnActionBarHomeButton();
}
});
但当您使用standart robotium方法时,错误不应出现。如果此解决方案不适用于您,请在此处共享完整堆栈跟踪。Robotium的4.3版本中存在问题runOnUiThread
不会有帮助
正如相关人员所说,它已在Robotium 4.3.1版本中修复
下载它
如果您保留runOnUiThread
代码并升级lib,您将在logcat中有一个更明确的异常:
E/AndroidRuntime(32201): java.lang.RuntimeException:
This method can not be called from the main application thread
移除runOnUiThread
,就可以了。这与您的问题无关。尽可能使用基本类型。在您的情况下,最好使用布尔值而不是布尔值
E/AndroidRuntime(32201): java.lang.RuntimeException:
This method can not be called from the main application thread