Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Selenium为同一定位器处理多个xpath?_Selenium_Selenium Webdriver_Xpath_Webdriver_Xpath 1.0 - Fatal编程技术网

如何使用Selenium为同一定位器处理多个xpath?

如何使用Selenium为同一定位器处理多个xpath?,selenium,selenium-webdriver,xpath,webdriver,xpath-1.0,Selenium,Selenium Webdriver,Xpath,Webdriver,Xpath 1.0,如何使用Selenium为同一定位器处理多个xpath,即如果一个定位器失败,请在脚本失败之前为同一字段使用另一个定位器。为相同字段使用或表达式。您可以传递同一WebElement的多个属性 例如: Xpath=//*[@type='submit' or @name='btnReset'] 首先,可以使用任何可用的 但是,可以使用可用属性及其值的排列和组合为同一元素构造多个元素。例如,对于以下元素: <div class="_2S1VP copyable-text selectable-

如何使用Selenium为同一定位器处理多个xpath,即如果一个定位器失败,请在脚本失败之前为同一字段使用另一个定位器。

为相同字段使用
表达式。您可以传递同一
WebElement
的多个属性

例如:

Xpath=//*[@type='submit' or @name='btnReset']
首先,可以使用任何可用的

但是,可以使用可用属性及其值的排列和组合为同一元素构造多个元素。例如,对于以下元素:

<div class="_2S1VP copyable-text selectable-text" data-tab="1" dir="ltr" spellcheck="true" contenteditable="true"></div>

您可以按如下方式构造多个XPath:

  • “//div[contains(@class,'copyable text')]”“
  • “//div[包含(@class,'copyable text')和@data tab='1']”
  • “//div[contains(@class,'copyable text')和@data tab='1'][@dir='ltr']
  • “//div[contains(@class,'copyable text')和@data tab='1'][@dir='ltr'和@spellcheck='true'])”
  • “//div[包含(@class,'copyable text')和@data tab='1'][@contenteditable='true']”

  • 所有这些xpath都将标识相同的元素。但最重要的是xpath应该能够唯一地标识所需的元素优化的xpath的构建责任完全由测试创建者承担。

    哪种语言?您已经尝试过哪些代码?在JAVA语言中,l寻找除此之外我可以使用的最佳选择还有其他方法吗?