Ole*_*tyy 2 selenium xpath webdriver selenium-webdriver
我可以通过xpath找到我的对象 //div[@id='menu-groups-group1']
这是 -
//div[@id='menu']//div[@class='menu-items-block menu-groups']//div[@id='menu-groups-menu1']
Run Code Online (Sandbox Code Playgroud)
相同的对象但更长的xpath.
我的对象的xpath长度是否重要?它会影响对象的搜索速度吗?
是的,这很重要,是的,它会影响速度.
//div[@id='menu-groups-group1']告诉WebDriver中的XPath处理器查找<DIV>文档中id属性为的所有元素menu-groups-group1.然后,根据您执行操作(例如,findElement(),findElements()),它可能会或可能不会定位后的第一个停止.//div[@id='menu']//div[@class='menu-items-block menu-groups']//div[@id='menu-groups-menu1']告诉WebDriver中的XPath处理器找到<DIV>文档中具有id属性的menu所有<DIV>元素,然后查找嵌入在这些元素中任意深度且具有class属性的menu-items-block menu-groups所有<DIV>元素,然后找到所有嵌入的元素在这些元素中的任何深度,并具有id属性menu-groups-group1'.然后,根据您执行操作(例如,findElement(),findElements()),它可能会或可能不会定位后的第一个停止.正如您所看到的,较长的XPath处理起来要复杂得多,并且可能会创建更大的元素集来进行检查.
你最好不要使用XPath id('menu-groups-group1'),甚至使用WebDriver By.id('menu-groups-group1').使用第二种形式的例子的唯一原因是menu-groups-group1id不是唯一的.在这种情况下,开发人员应该为自己感到羞耻.
| 归档时间: |
|
| 查看次数: |
1346 次 |
| 最近记录: |