Robot Framework - 在动态网络应用程序上使用的最佳元素
Robot Framework - Best Element to use on dynamic web app
我正在为动态站点编写 RF 脚本。但是,根据用户权限,菜单选项卡 change/hide。我不能使用 xpath,因为选项卡的顺序可能会改变。有什么建议么。 CSS 和 Sizzle 似乎效果不佳,因为我找不到正在使用的 ID 或名称值。
不确定以下是否有帮助
<div class="interior_nav_lv2" id="div_2_1" style="display: block;">
<a class="subNavOffHREF " href="index.cfm?view=something.sCs">Search Cardholders</a>
<a class="subNavOffHREF " href="index.cfm?view=something.lCs">List Cardholders</a>
点击 links
如果您需要单击其中一个 link,您可以使用 link 文本作为定位器。例如:
click link Send Message
您还可以明确包含定位器策略:
click link link=Send Message
所有这些都记录在 Selenium2Library documentation 中标题为 "Locating or specifying elements" 的部分下。
与您的问题中所述相反,您可以使用 xpath。例如,这有效:
click link xpath=//a[text()='Add Cardholder']
正在获取 link 的列表
如果您需要验证 link,可以使用 Get Webelements 获取所有 link。然后,您可以遍历 link 以保存 link 文本。例如:
${elements}= get webelements xpath=//div[@class='interior_nav_lv2']/a
@{links}= create list
:FOR ${element} IN @{elements}
\ append to list ${links} ${element.text}
Should contain ${links} Search Cardholders
Should contain ${links} List Cardholders
我正在为动态站点编写 RF 脚本。但是,根据用户权限,菜单选项卡 change/hide。我不能使用 xpath,因为选项卡的顺序可能会改变。有什么建议么。 CSS 和 Sizzle 似乎效果不佳,因为我找不到正在使用的 ID 或名称值。
不确定以下是否有帮助
<div class="interior_nav_lv2" id="div_2_1" style="display: block;">
<a class="subNavOffHREF " href="index.cfm?view=something.sCs">Search Cardholders</a>
<a class="subNavOffHREF " href="index.cfm?view=something.lCs">List Cardholders</a>
点击 links
如果您需要单击其中一个 link,您可以使用 link 文本作为定位器。例如:
click link Send Message
您还可以明确包含定位器策略:
click link link=Send Message
所有这些都记录在 Selenium2Library documentation 中标题为 "Locating or specifying elements" 的部分下。
与您的问题中所述相反,您可以使用 xpath。例如,这有效:
click link xpath=//a[text()='Add Cardholder']
正在获取 link 的列表
如果您需要验证 link,可以使用 Get Webelements 获取所有 link。然后,您可以遍历 link 以保存 link 文本。例如:
${elements}= get webelements xpath=//div[@class='interior_nav_lv2']/a
@{links}= create list
:FOR ${element} IN @{elements}
\ append to list ${links} ${element.text}
Should contain ${links} Search Cardholders
Should contain ${links} List Cardholders