Calabash iOS查找对象不在屏幕上

时间:2017-01-18 19:39:37

标签: calabash-ios

我正在使用xamarin calabash-sandbox,(calabash-ios 0.20.4)在iOS模拟器上测试应用程序。当应用程序在屏幕上时,查询(“label”,:text)查找预期的对象,例如 [0] "Learn More", [1] "Skip"

当我按下应用程序的“了解更多”按钮时,Safari会弹出并显示预期的网页。但是,即使应用程序不再可见,上面的查询也会返回相同的结果。根据文档,葫芦应该只找到可见的对象。

实际上,无论您如何将应用程序移出屏幕,查询都会查找应用程序屏幕上的任何对象,例如您可以点击主页按钮或调出另一个应用程序,查询仍然可以找到相同的对象。这是一个错误,还是有某种方法可以限制葫芦只能找到可见的对象?

仅供参考,以上在calabash-android上正常工作

1 个答案:

答案 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