在我正在处理的应用中,有一个按钮可以打开应用的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有点不与此视图中的按钮交互,我有哪些选项? 如何使用这种新视图?
答案 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。