Robot Framework - 在动态Web应用程序上使用的最佳元素

时间:2017-05-03 18:28:56

标签: css robotframework webautomation

我正在为动态网站编写RF脚本。但是,根据用户权限,菜单选项卡会更改/隐藏。我不能使用xpath,因为选项卡的顺序可能会改变。有什么建议。 CSS和Sizzle似乎没有用,因为我无法找到并识别或命名正在使用的值。

不确定以下是否有帮助

<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>

1 个答案:

答案 0 :(得分:3)

点击链接

如果需要单击其中一个链接,可以使用链接文本作为定位器。例如:

click link    Send Message

您还可以明确包含定位器策略:

click link    link=Send Message

这些都记录在Selenium2Library documentation中标题为“查找或指定元素”的部分中。

与您的问题中所述相反,您可以使用xpath。例如,这有效:

click link    xpath=//a[text()='Add Cardholder']

获取链接列表

如果您需要验证链接,可以使用Get Webelements获取所有链接。然后,您可以遍历链接以保存链接文本。例如:

${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