1

我有一个 txt.setError 文本,我想检查在测试时屏幕上是否出现错误我的测试用例是;

solo.enterText(0, "example");
solo.clickOnImageButton(3);
assertTrue(solo.searchText("E-posta adresleri için lütfen şu biçimi kullanın: ad@example.com"));

在此处输入图像描述

onclick imagebutton后我得到了setError文本

但是我得到了 AssertionFailedError 我做错了什么?

编辑:

问题的根源在于 Robotium 的发布。我使用的是 2.1 ,但是对于这个断言,需要 robotsium 3.0 和更高版本。

4

2 回答 2

2

尝试使用 solo.waitfortext() 而不是 assertTrue(solo.searchText())。问题可能是断言在显示文本之前执行。

所以我想说你有两个可能的选择。

选项1:

solo.enterText(0, "example");
solo.clickOnImageButton(3);
solo.waitforactivity(solo.getcurrentactivity().tostring). // you will wait untill the screen is entirely displayed.
assertTrue(solo.searchText("E-posta adresleri için lütfen şu biçimi kullanın: ad@example.com"));

选项2(最佳选项)

solo.enterText(0, "example");
solo.clickOnImageButton(3);
boolean textExist = solo.WaitForText("E-posta adresleri için lütfen şu biçimi kullanın: ad@example.com"));
if (!textExist){
Fail();
}
于 2013-05-16T16:08:42.103 回答
0

另外的选择:

EditText myEditText = (android.widget.EditText) solo.getView(com.my.app.R.id.myEditText);
solo.clickOnView(myButton);

//Waits for error
solo.sleep(2000);

boolean result = myEditText.getError() == null;
if(!result){
    fail();
}
于 2015-03-30T21:45:32.027 回答