我开始登录活动并使用Espresso测试:
onView(withId(R.id.username)).perform(typeText("USERNAME"));
我希望该字段中的文字为“USERNAME”,但有时我会收到“SERNAME”,其他人会收到“UERNAME”。
大部分时间都有效但有时会失败,特别是在重启手机后。
以下是重现错误的示例代码: https://github.com/neoranga55/CleanGUITestArchitecture
答案 0 :(得分:9)
测试手机使用Swift键盘启用双语输入。显然这会导致手机启动后键盘的第一次出现变慢,但也会以一种奇怪的方式自动纠正Espresso键入的单词的第一个字母。
解决方案:始终在测试设备/模拟器上使用默认系统键盘,并确保启用软件键盘以避免this other issue。
答案 1 :(得分:0)
您也可以尝试replaceText()
。不受慢速IME影响:
onView(withId(R.id.username)).perform(replaceText("USERNAME"));