是否可以通过webelement的xpath在运行时发送动态id常量?

时间:2014-11-24 09:44:59

标签: junit selenium-webdriver

我尝试将动态id常量作为参数在运行时获取值:

WebElement table = driver.findElement(By.xpath("//div[contains(@id, "+(table_id)+")]/div/table/thead/tr"));

table_id是String变量。

它给出随机结果..

为什么在每次测试执行时都没有给出正确的结果?

2 个答案:

答案 0 :(得分:0)

假设这里table_id是一个数字 - 你可以把它放在循环下并使用driver.findElement(By.xpath(“// div [contains(@id,”+(table_id)+“)] / div / table / tbody / *”));并做必要的操作。

答案 1 :(得分:0)

我不确定它是否是拼写错误或者您打算以这种方式编写代码,我在您的HTML代码中看到“class”,但您在xPath中使用“id”。

我在xpath下面尝试过,它运行正常。

$x("//div[contains(@class, 'c92f76bb-11f3-532e-table')]/table/tbody/tr/td/div")

请用类和正确的xpath层次结构替换id

谢谢, 乌代