我在Robot Framework中使用Appium来自动化Windows UWP应用程序。在inspect.exe中,我要单击的元素是一个名称为'QA'的单选按钮,以下是其祖先:
Ancestors: "FusionReg-MockUI" window
"FusionReg-MockUI" window
"Desktop 1" pane
[ No Parent ]
我正在使用以下绝对xpath定位器方法在Robot Framework脚本中单击它:
Click Element xpath=/Pane[@Name='Desktop${SPACE}1']/Window[@Name='FusionReg-MockUI']/Window[@Name='FusionReg-MockUI']/RadioButton[@Name='QA']
以上行失败,并显示错误“未匹配任何元素”。
但是,如果我使用相对的XPath,它将起作用!!非常奇怪。
Click Element xpath=//RadioButton[@Name='QA']
我想使用绝对XPATH。我究竟做错了什么?
我不是XPATH方面的专家,我非常感谢一个解决方案,因为我正在使用适用于Windows应用程序自动化的Robot Framework进行PoC工作。
谢谢。
答案 0 :(得分:3)
我做了一些反复试验,并删除了上述XPATH的第一个令牌。
更改了/Pane[@Name='Desktop 1']/Window[@Name='FusionReg-MockUI']/Window[@Name='FusionReg-MockUI']/RadioButton[@Name='QA']
到
/Window[@Name='FusionReg-MockUI']/Window[@Name='FusionReg-MockUI']/RadioButton[@Name='QA']
成功了。