-1

我在 Ranorex 中运行该应用程序。下一步是识别 xpath 中存在的元素:

/form[@controlname='ShellForm']/element[@controlname='LayoutWorkspace']/?/?/element[@controlname='MainWorkspace']/element[@controlname='9673da41-8368-44f4-abe7-2d782f908dd1 ']//元素[@controlname='RightWorkspace']/?/?/tabpage[@accessiblename='Facilities']

我从视图间谍中拖放了这个元素。但它无法识别应用程序中的任何元素。

4

1 回答 1

1

好的,我怀疑正在查看您的 xpath 是该页面上具有动态命名的元素之一。特别是这个元素

element[@controlname='9673da41-8368-44f4-abe7-2d782f908dd1']

我猜这个控件有一个在运行时生成的动态名称。您得到的错误是由 xpath 无效引起的。实际上,ranorex 不久前写了一篇关于如何处理这种情况的博客,位于此处。 我的第一个建议是直接修改 xPath,(请务必先阅读相关文档)。我要尝试的第一个 XPath 就是这个。

/form[@controlname='ShellForm']/element[@controlname='LayoutWorkspace']//element[@controlname='MainWorkspace']//element[@controlname='RightWorkspace']//tabpage[@accessiblename='Facilities']    

通过直接删除路径中的项目并使用搜索所有子元素字符(“//”),您会受到很小的性能影响,但它会使您的 xpath 更清洁,并且在许多情况下更稳定

同样在您的间谍工具中,您可以直接粘贴 xpath,您将能够看到链中的哪个位置是导致您出现问题的无法识别元素

于 2014-07-30T18:25:43.230 回答