red*_*rom 3 android automated-tests android-espresso
我正在尝试将文本设置为同一活动的文本输入(一个接一个)。
问题是在第一个输入时文本填充正确,但在第二个输入中我收到异常消息。
android.support.test.espresso.PerformException:
Error performing 'single click' on view 'with id: com.example.xxx.test:id/txtField2'.
Run Code Online (Sandbox Code Playgroud)
下面是测试方法:
@Test
public void buttonShouldUpdateText(){
this.clickOnActionBarMenuIcon();
this.clickOnActionBarMenuItem(10);
this.clickOnButton();
this.checkTextOnActivity("Hello world!");
this.insertTextIntoInput(R.id.txtFieldOne, "Hello world!"); // Works fine
this.insertTextIntoInput(R.id.txtFieldTwo, "Hello world2"); // Throws exception
}
Run Code Online (Sandbox Code Playgroud)
方法如下:
public void insertTextIntoInput(Integer inputId, String text) {
onView(withId(inputId)).perform(typeText(text));
}
Run Code Online (Sandbox Code Playgroud)
布局如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="activities.SecondActivity">
<TextView android:text="@string/hello_world"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/text1SecondView" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/txtFieldOne"
android:layout_below="@+id/text1SecondView"
android:layout_alignParentStart="true"
android:layout_marginTop="103dp"
android:layout_alignParentEnd="true" />
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/txtFieldTwo"
android:layout_marginTop="51dp"
android:layout_below="@+id/txtFieldOne"
android:layout_alignParentStart="true"
android:layout_alignParentEnd="true" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我该如何解决它,我做错了什么?
很可能您有一个覆盖编辑文本的键盘。尝试关闭它
closeSoftKeyboard() 在第一个输入字段中输入文本时的 ViewAction。
请记住 closeSoftKeyboard() 不会等待键盘动画停止:https : //code.google.com/p/android-test-kit/issues/detail? id=79
| 归档时间: |
|
| 查看次数: |
2845 次 |
| 最近记录: |