3

在Android上进行espresso UI测试并试图绕过智能锁屏。问题在于我们正在测试Firebase,并且无法关闭设备上的智能锁,因为它们在云端(我不相信)。弹出窗口也不是应用程序本身的一部分,所以我无法使用Stetho或布局检查器获取该ID。我相信这是另一个应用程序(或操作系统功能)绘制在我们的应用程序的顶部。意式浓缩咖啡测试:以编程方式在智能锁上保存密码

如何在espresso中点击“不,谢谢”按钮?

Smart Lock

+0

你应该ABL e在Setttings> Google> Smart Lock for Passwords下打开设备上的Smart Lock功能? –

+0

并且不会像'onView(withText(“NO THANKS”))。perform(click())'work?或者可能'不,谢谢'或'不谢谢'或'不谢谢'(不知道它是如何处理这里的帽子的) –

+0

@StevenSoneff,我正在测试firebase,所以手机在云端。我不知道我是否可以通过编程方式更改手机设置。 – Jason

回答

0

您可以使用uiautomator

graddle

androidTestCompile 'com.android.support.test.uiautomator:uiautomator-v18:2.1.3' 

并将其添加到您的代码

waitSeconds(10) // Waiting for smartlock window 
val uiDevice = UiDevice.getInstance(InstrumentationRegistry.getInstrumentation()) 
val currentPackageName = uiDevice.currentPackageName 
if (currentPackageName != "your.app.package") { 
    uiDevice.pressBack() 
}