在 Android 设备上运行测试sdk 26
导致他们因为新的失败Autofill https://developer.android.com/guide/topics/text/autofill.html当 espresso 尝试单击字段时隐藏字段的功能。
我在 firebase 测试实验室上运行我的测试,因此我无法在我的测试设备上手动禁用它们。
一些图片:
1. 单击用户名字段之前,密码可见。
2. 单击用户名字段后,此自动填充对话框将隐藏密码字段:
3. 登录后会显示另一个填充对话框:
Espresso 现在无法单击密码字段,因为自动填充对话框隐藏了我的字段并且fail
.
Using AutofillManager#disableAutofillServices()
仅禁用#2。对话框但是#3。仍然在那里。
如何在测试设备上禁用自动填充?
根据文档,您可以使用禁用自动填充服务AutofillManager#disableAutofillServices() https://developer.android.com/reference/android/view/autofill/AutofillManager.html#disableAutofillServices() API:
如果调用此 API 的应用程序启用了自动填充服务,它们将被禁用。
Usage:
val autofillManager: AutofillManager = context.getSystemService(AutofillManager::class.java)
autofillManager.disableAutofillServices()
你可以在以下位置执行此操作@Before
您的测试步骤。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)