我尝试使用Calabash-iOS使用以下查询访问webView元素:
query("webView css:'*'")
但它无法检测到这些元素。当我手动触摸任何输入字段时,它会放大并且我能够使用上述查询查看元素。
我可以为此获得任何解决方案吗?
1)首先,确保您知道应用程序中存在的正确类型的webview。指定webview元素的最简单方法是使用元素类或元素的id。
要获取正确的元素类,可以在控制台中运行以下命令: irb> classes'*'
这应该返回一个元素数组,如: [0] UIView [1] UIImageView [2] UICollectionView [3] UICollectionViewCell .... [x] UIWebView ...
要显示所有元素的id,请使用以下命令: irb> identifier'*'
2)一旦确定了正确的webview容器元素,就可以在查询中使用它了: irb>查询“UIWebView css:''” 或者,您可以使用它的ID识别webview容器: irb>查询“id:'web_view'css:'*'”
如果您需要有关如何识别Web视图中元素的更多信息,请查看以下链接:
https://github.com/calabash/calabash-ios/wiki/06-WebView-Support
试试query("all webView css:'*'")