【发布时间】:2017-11-27 00:26:55
【问题描述】:
我正在尝试为我的硒测试找到一个元素。我尝试编写以下 xpath,但它似乎对我不起作用。
我试过了:
//div[contains(@tb-test-id, 'Distribution')]
注意:
我知道我可以使用 CssSelector 以及基于具体占位符 id 作为父节点的 Xpath:tabZoneId115 并且还使用 Xpath 中的相对路径。我的场景并不复杂,因为我想单击此页面上的其他几个元素,同样我需要为数百个测试用例编写元素。所以我打算写一个测试用例并尝试提供数据驱动的excel表,这样人们就可以通过只添加文本框的标题来维护测试用例,在这种情况下,'DISTRIBUTION'是文本框报告的标题。
请指导我如何找到适合我点击的元素。提前致谢。
【问题讨论】:
-
你说的“似乎对我不起作用”是什么意思?你到底想选择什么?
-
从 selenium webdriver 运行时收到错误消息。错误:无法定位元素。我想选择标题为“分发”的部分。它不是可点击的元素或任何东西,但是我单击的标题区域基本上选择了基础数据供我在该网页上下载。为简单起见,我想点击标题为“分发”的标题。
-
可能是Html标签或属性从一开始就不存在。设置超时,以便 Selenium 在引发此错误之前继续尝试获取元素数秒。你在使用 Selenium 和 JavaScript 吗?
-
你得到什么 driver.findElement(By.xpath("//div[contains(@tb-test-id, 'Distribution')]")).click();
标签: jquery selenium xpath selenium-webdriver xpath-2.0