多个下拉列表的 xPath 命名映射

Posted

技术标签:

【中文标题】多个下拉列表的 xPath 命名映射【英文标题】:xPath Namemapping for several dropdowns 【发布时间】:2021-12-08 09:40:03 【问题描述】:

我有一个使用 TestComplete 在多个网页屏幕中动态显示的按钮。

我有一个在第一个屏幕中成功实现的 buttonKeep 对象,它通过第一个屏幕并选择一个 Word 和 Excel 文档复制数据,然后将其粘贴到网站

//div[(contains(@style,'display: block'))]//按钮[@id='Keep']

OR //div[not(contains(@style,"display:none'))]//按钮[contains(@class, 'fr-keep-word')]

OR //按钮[包含(@class, 'fr-keep-word')]

OR //div[2]/div/div/button[2]

OR //div[contains(@style,'display: block')]

现在我将选择一个屏幕,将我移至一系列下拉菜单,我将在其中一个下拉菜单中执行相同的操作。每次我运行测试时,系统都希望添加一个不同的 buttonKeep 对象,而不是识别出该项目之前已正确映射。甚至当我选择第一次运行测试时。

任何建议都会非常有帮助。

【问题讨论】:

【参考方案1】:

我想这个问题是由于页面对象中的动态元素造成的。由于页面对象不同,会导致再次映射相同的对象。

我建议调查页面对象,如果它们是同一页面,但具有动态部分,请添加通配符值以说明动态节点。

要使映射设置独立于网页 URL 的动态变化,您可以使用星号 () 通配符代替值 -- http://www.example.com/index.asp?act=12312&sid=,或代替整个查询字符串 -- @987654322 @

【讨论】:

以上是关于多个下拉列表的 xPath 命名映射的主要内容,如果未能解决你的问题,请参考以下文章

确定在 phptravels.net 站点中选择下拉列表的 xpath

如何映射枚举以选择 Storybook 中的下拉列表?

动态创建多个下拉列表

如何创建多个从同一个数组中获取值的动态下拉列表,而无需更改 Javascript 中的其他下拉列表

为机器人自动化中的下拉列表选择元素

以角度6动态加载formarray中的多个下拉列表