我正在使用xamarin calabash-sandbox,(calabash-ios 0.20.4)在iOS模拟器上测试应用程序。当应用程序在屏幕上时,查询(“label”,:text)查找预期的对象,例如
[0] "Learn More",
[1] "Skip"
当我按下应用程序的“了解更多”按钮时,Safari会弹出并显示预期的网页。但是,即使应用程序不再可见,上面的查询也会返回相同的结果。根据文档,葫芦应该只找到可见的对象。
实际上,无论您如何将应用程序移出屏幕,查询都会查找应用程序屏幕上的任何对象,例如您可以点击主页按钮或调出另一个应用程序,查询仍然可以找到相同的对象。这是一个错误,还是有某种方法可以限制葫芦只能找到可见的对象?
仅供参考,以上在calabash-android上正常工作
答案 0 :(得分:0)
# Queries your application - the Application Under Test
query("label", :text)
Safari Web View Controller不属于您的应用程序。您可以尝试使用DeviceAgent查询和手势与Safari Web View Controller进行交互
# Return a list of visible views
device_agent.query({ })
# Return a list of all views
device_agent.query({all: true})
DeviceAgent API(包括示例查询)为here。