Testing 如何使用Xpath Selenium获取所有值
我想得到td[3]的所有值。我有下面的代码Testing 如何使用Xpath Selenium获取所有值,testing,selenium,xpath,cucumber,Testing,Selenium,Xpath,Cucumber,我想得到td[3]的所有值。我有下面的代码 <tr> <td>1</td> <td>2</td> <td>3</td> </tr> <tr> <td>4</td> <td>5</td> <td>6</td> </tr> <tr> <t
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
<tr>
<td>4</td>
<td>5</td>
<td>6</td>
</tr>
<tr>
<td>7</td>
<td>8</td>
<td>9</td>
</tr>
<tr>
<td>10</td>
<td>11</td>
<td>12</td>
</tr>
WebElement test;
test=driver.findElement(By.xpath("./" +value)); // here /*/*/td[5] is passed as param
System.out.println("Values : " +test.getText());
1.
2.
3.
4.
5.
6.
7.
8.
9
10
11
12
网络元素测试;
test=driver.findElement(按.xpath(“./”+值));//此处/*/*/td[5]作为参数传递
System.out.println(“值:“+test.getText());
我尝试了/*/*/td[3]
,但它只给出了第一个值
谢谢
//tr/td[3]
返回每三个
td
元素,即tr
元素的子元素。您可以使用以下代码获取属于第3列的所有数据:
List <WebElement> allRows = driver.findElements(By.xpath("\\table\\tr"));
for(int i=0; i<allRows.size(); i++){
WebElement col3Element = allRows.get(i).findElement(By.xpath("\td[3]"));
System.out.println(" Row " + i "Columnn 3 data: " + col3Element.getText());
}
List allRows=driver.findElements(By.xpath(“\\table\\tr”);
对于(int i=0;iSorry),我刚刚更新了我的代码。但我只是得到了第一个元素。@Jay您使用的是findElement
,它返回一个元素。您应该使用findElements
来获得元素列表。哦,好吧,让我试试。谢谢!我收到一个错误“类型不匹配:无法从列表转换为WebElement”我不懂Java,但我相信你可以找到很多迭代列表的例子。