我目前正在使用硒框架对web应用程序进行运行。使用xpath来定位元素。对于应用程序中的特定下拉菜单(带有过滤器),xpath会经常更改(对于下拉菜单中的可用选项)。下拉菜单中的选项位于span范围内。有什么办法来处理动态xpath?目前即时通讯使用萤火虫获取xpaths。Xpaths正在动态变化
0
A
回答
0
如果您知道该期待什么,则可以随时使用XPATH文本匹配。
//*[text()='DropdownValue']
,如果你有在下拉列表中的元素:
//li[text()='DropdownValue']
如果你能提供例如下拉结构或只是你的情况的HTML代码,它会更容易找到合适的解。
+0
我想从下拉列表中选择“Abereen District”选项。当我检查与火虫的特定选项时显示以下结构:
+0
我建议使用这个:// span [text()='Abereen District'] –
+0
我厌倦了你的建议,但它不工作 – kumar
0
你可以得到每个元素的下拉菜单里,得到其中包含文本的元素的索引,然后单击它:
List<WebElement>elems = driver.findElements(By.xpath("xpath from every element"));
elems.get(getIndex(elems, "Abereen District")).click();
private int getIndex(List<WebElement>elems, String elemText) {
for(int i = 0; i < elems.size(); i++)
{
if(elems.get(i).getText().contains(elemText))
return i;
}
return -1;
}
相关问题
- 1. 处理动态Xpaths
- 2. 动态变化
- 3. 动态变化
- 4. 动态变化
- 5. 变化__slots__动态
- 6. 类动态变化
- 7. asp:dropdownlist动态变化
- 8. 动态变化少的变量在.NET
- 9. JQuery - 动态变化页面
- 10. jQuery的动态变化
- 11. 动态变化的div
- 12. WinForms PropertyGrid:动态StandardValuesCollection变化
- 13. Highcharts动态变化切片
- 14. MySQL动态日期变化
- 15. 锚点/ href动态变化
- 16. 变化selectedColor动态地jqvamp
- 17. jQuery动态CSS变化
- 18. 春季动态变化
- 19. 动态变化课,jquery
- 20. jQuery动态变化问题
- 21. 变化大小动态
- 22. ActiveRecord属性动态变化?
- 23. 动态变化表高度
- 24. 动态UITableViewCells高度变化
- 25. Angular2 ngIf动态变化
- 26. jquery onclick动态变化
- 27. 变化宽度动态
- 28. ImageView的动态变化
- 29. 变化的UIView动态
- 30. ID Shold动态变化
给予一定的HTML代码,以了解动态变化的? –
最初,我想点击下拉选项的xpath是:“/ html/body/div [1]/div [5]/ul/li [2]/label/span”但是目前xpath为相同的选项已更改为“/ html/body/div [1]/div [7]/ul/li [2]/label/span”。 xpath是否有任何改变的原因,我想知道xpath是否可以动态改变。 – kumar
而不是写入相对xpath创建一个类,id或文本的xpath。 Firebug创建一个相对xpath。 –