我正在使用RF测试我的网站。问题是,每次打开模态时,将在我要输入文本的文本框中设置一个不同的id(定位符)。您如何获得此定位器的价值?
本来应该尝试 获取元素属性 ,但是由于它仍然需要特定的定位器,因此它无法支持我的问题。
感谢您分享您的想法
答案 0 :(得分:0)
在ROBOT Framework(RF)中,可以通过多种方式访问定位器。请参阅并阅读以下链接:http://robotframework.org/Selenium2Library/Selenium2Library.html
访问定位器的最常见方法是通过ID进行访问,例如:
Input Text id:username # Element with id 'username'.
Input Text id:password # Element with id 'password'. you can also use 'Input Password' keyword.
但是,如果'id'元素是如此动态以至于它不断变化,那么最好的选择是使用 ABSOLUTE XPATH表达式或 CSS选择器。在您的Web浏览器中安装XPATH插件。对于Firefox,只需安装ChroPath。
然后,获取该用户名和密码文本框的 ABSOLUTE Xpath元素。假设我们已经知道绝对的xpath表达式,那么在ROBOT中,您可以像下面这样编写。
${login_absolute_xpath}= Set Variable xpath=/html[1]//div[7]/form[1]/div[1]/input[1]
${password_absolute_xpath}= Set Variable xpath=/html[1]//div[7]/form[1]/div[2]/input[1]
Wait Until Page Contains Element xpath=${login_absolute_xpath}
Input Text xpath=${login_absolute_xpath}
Input Text xpath=${password_absolute_xpath}
...
这应该有效。请告诉我是否有帮助。
答案 1 :(得分:0)