所以我是一个相对较新的Appium用户,所以如果这个问题看起来有点基础,请原谅。
我的公司有一个混合应用程序,它在几个地方使用webiews,我目前正在使用Appium在Ruby中为这个应用程序编写测试脚本。我已经卡住了一段时间,因为我到达了一个页面,我需要在webview中搜索元素并单击它们。到目前为止,我已设法使用
将上下文切换到webview set_context context_array.last
我知道上下文切换成功了,因为我然后将当前上下文输出到终端,并且它正确输出了我在webview中的内容。然后我使用Safari来检查webview中的元素,并看到以下HTML代码:
我按照xlink找到了以下几行代码:
<symbol id="icon-eat" viewBox="0 0 58 58">
<title>icon-eat</title>
因此,在我的Appium脚本中,我尝试使用以下内容找到该元素,但到目前为止尚无法使用。
1. wait { xpath('//symbol[@id="icon-eat"]') }
2. wait { id("icon-eat") }
有关如何进行的任何建议?我的能力是:
options = {
caps: {
platformName: 'iOS',
platformVersion: '10.3',
deviceName: 'iPhone 7',
app: APP_PATH,
automationName: "XCUITest",
browserName: "iOS",
startIWDP: true,
nativeWebTap: true
},
launchTimeout: 20000
}
附加了Appium日志。出于安全考虑,我已经更换了公司名称和其他敏感信息。
https://drive.google.com/file/d/0B6mwi0KrKYGQTGctek9wWm5ES28/view?usp=sharing