Espresso:与Play商店Popup互动

时间:2017-07-06 08:25:18

标签: java android google-play android-espresso ui-testing

在我正在处理的应用中,有一个按钮可以打开应用的Google Play商店页面。使用Espresso,我想检查是否打开了正确的页面。

// this is the code I already have

onView(withId(R.id.SettingsButton)).perform(click());
onView(withId(R.id.RateAppButton)).perform(scrollTo(),click());

// now the Play Store should be opened (like a popup)

现在我想知道显示的应用程序标题是否包含正确的应用程序名称,以及它是否是实际的游戏商店页面。由于Espresso有点不与此视图中的按钮交互,我有哪些选项? 如何使用这种新视图?

1 个答案:

答案 0 :(得分:0)

正如您所说,espresso可以与您自己的包进行互动。 要与其他应用程序或Android系统用户界面(例如权限对话框)进行交互,您必须使用ui-automator

如果你将它与浓缩咖啡结合使用,ui-automator效果很好,你可以用espresso打开你应用中的playstore链接,然后用ui-automator检查新屏幕(还可以按系统返回按钮返回你的应用程序) )。

例如,您可以使用类似的内容来检查是否显示正确的标题:

 UiObject titleLabel = mDevice.findObject(new UiSelector().text("Your Title"));
 if(!titleLabel.exists()) 
 {
    throw new RuntimeException("wrong title!");
 }

有关更长的示例,请参阅此blogpost