![](/img/trans.png)
[英]How to click on an element in case of not unique id in Robot Framework Selenium
[英]how to locate an id of the button to click when id is dynamic in robot framework
我是机器人框架的新手,学习了一些机器人框架的基础知识。 当我尝试在 facebook 中创建一个新帐户时,我使用了“创建新帐户”的 id 元素,但每次打开新页面时都会生成新的 id。 有人可以帮助我了解当 id 是动态时如何单击按钮。
*** Settings ***
Library SeleniumLibrary
*** Test Cases ***
facebooklogin
open browser https://www.facebook.com/ firefox
maximize browser window
set selenium timeout 10s
click button id:u_0_d_si
错误消息:未找到带有定位符“id:u_0_d_si”的按钮。
我发现的一个快速替代方法是您可以打开此链接: https://www.facebook.com/login/web/然后:
SeleniumLibrary.Wait until Element is Visible xpath://a[contains(text(),'Sign up for Facebook')] 10s
点击元素 xpath://a[contains(text(),'Sign up for Facebook')]
只需使用元素的正确定位器策略,因为您使用了元素的 id 属性,但是如果您每次刷新页面都会更改,这意味着 id 属性值是动态的,您可以 go 用于元素的文本来识别它每次都是独一无二的。
*** Test Cases ***
Create new facebook account
Open Browser https://www.facebook.com/ firefox
Maximize Browser Window
Set Selenium Timeout 10s
Click Button xpath:.//a[text()="Create New Account"]
有时这对动态元素很有效:
${element1}= Asign Id To Element contains...etc
Execute Javascript arguments[0].click(); Arguments ${element1}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.