我正在尝试在Appium中测试我们的Cordova应用程序。我正在使用node wd界面。当我在Appium Inspector中查看元素时,它们似乎没有任何我可以使用的标识符。例如,我在登录的电子邮件文本输入中看到以下内容:
我在此元素的HTML中设置了各种内容,例如id
,name
等(它还有一个使用指向for
属性的标签输入。)但似乎没有任何我可以寻找的东西。因此,我最终会使用电子邮件的值查找UIATextField
个元素。这是不可取的,因为我没有一致的查找输入的方法。例如,如果我更改输入的值,我需要通过新输入查找元素。
所以我的问题是:如何从Cordova的HTML中为此元素设置可访问性标识符或任何句柄?我甚至会采用我可以查询的data-*
属性。或者我不正确地解决这个问题?
我询问可访问性标识符,因为我在其他地方读过I should not use XPath selectors用于Appium测试,但我看不清楚为什么会这样(这似乎对我有用。)
感谢您的帮助!
答案 0 :(得分:1)
您是否尝试过更改背景? https://stackoverflow.com/a/24878765/31252。目前你正在开发UIAutomation层,它是原生iOS,对HTML没有任何了解,但我希望当你切换到webview上下文时,你应该能够看到你的标识符。
更改上下文定义适用于webviews(Android和iOS),但我不确定这会如何影响cordova呈现的页面