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