Espresso - typeText()无法正常工作,有时会丢失字母

时间:2015-09-19 11:40:46

标签: android android-espresso

我开始登录活动并使用Espresso测试:

onView(withId(R.id.username)).perform(typeText("USERNAME"));

我希望该字段中的文字为“USERNAME”,但有时我会收到“SERNAME”,其他人会收到“UERNAME”。

大部分时间都有效但有时会失败,特别是在重启手机后。

以下是重现错误的示例代码: https://github.com/neoranga55/CleanGUITestArchitecture

2 个答案:

答案 0 :(得分:9)

测试手机使用Swift键盘启用双语输入。显然这会导致手机启动后键盘的第一次出现变慢,但也会以一种奇怪的方式自动纠正Espresso键入的单词的第一个字母。

解决方案:始终在测试设备/模拟器上使用默认系统键盘,并确保启用软件键盘以避免this other issue

答案 1 :(得分:0)

您也可以尝试replaceText()。不受慢速IME影响:

onView(withId(R.id.username)).perform(replaceText("USERNAME"));