在WebDriver中验证HTML表数据
有人能告诉我如何使用WebDriver验证HTML表中的数据吗 HTML如下所示。我需要验证网页上的值xyz、abcd、1234、5678在WebDriver中验证HTML表数据,html,webdriver,selenium-webdriver,Html,Webdriver,Selenium Webdriver,有人能告诉我如何使用WebDriver验证HTML表中的数据吗 HTML如下所示。我需要验证网页上的值xyz、abcd、1234、5678 <table> <tr> <td>xyz</td> <td>abcd</td> </tr> <tr> <td>1234</td> <td>5678</td> </tr> </table>
<table>
<tr>
<td>xyz</td>
<td>abcd</td>
</tr>
<tr>
<td>1234</td>
<td>5678</td>
</tr>
</table>
xyz
abcd
1234
5678
提前谢谢mra.请记住问题的摘录: 我需要验证网页上的值xyz、abcd、1234、5678
<table>
<tr>
<td>xyz</td>
<td>abcd</td>
</tr>
<tr>
<td>1234</td>
<td>5678</td>
</tr>
</table>
我建议您尝试使用定位器识别这些值,然后断言/验证相同的值
在这个例子中,我使用了XPath(为了清晰起见有点冗长)作为定位策略。希望这能有所帮助
try {
assertEquals("xyz", driver.findElement(By.xpath("//table//tr[1]/td[1]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
try {
assertEquals("abcd", driver.findElement(By.xpath("//table//tr[1]/td[2]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
try {
assertEquals("1234", driver.findElement(By.xpath("//table//tr[2]/td[1]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
try {
assertEquals("5678", driver.findElement(By.xpath("//table//tr[2]/td[2]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
记住你的问题摘录: 我需要验证网页上的值xyz、abcd、1234、5678
<table>
<tr>
<td>xyz</td>
<td>abcd</td>
</tr>
<tr>
<td>1234</td>
<td>5678</td>
</tr>
</table>
我建议您尝试使用定位器识别这些值,然后断言/验证相同的值
在这个例子中,我使用了XPath(为了清晰起见有点冗长)作为定位策略。希望这能有所帮助
try {
assertEquals("xyz", driver.findElement(By.xpath("//table//tr[1]/td[1]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
try {
assertEquals("abcd", driver.findElement(By.xpath("//table//tr[1]/td[2]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
try {
assertEquals("1234", driver.findElement(By.xpath("//table//tr[2]/td[1]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
try {
assertEquals("5678", driver.findElement(By.xpath("//table//tr[2]/td[2]")).getText());
} catch (Error e) {
verificationErrors.append(e.toString());
}
您的方法将取决于该表是否只包含2行和2列。行和列是否总是以相同的顺序存在?如果不是,那么之前的xcode示例提供程序将起作用,如果不是,您可能需要更具创造性 我以前使用过的一种在表格中爬行的方法与此类似 定义表示表的WebElement
WebElement yourTable = driver.findElement(By.tagname("table"));
接下来,创建表示表中每一行的WebElements列表
List<WebElement> tableRows = yourTable.findElements(By.tagname("tr");
List tableRows=yourTable.findElements(按.tagname(“tr”);
最后,您可以遍历表中的行,直到找到要查找的数据
for(int i=0; i<tableRows.size(); i++){
WebElement row = tableRows.get(i);
now do whatever you want with your WebElement that represents a single row of the table;
}
for(int i=0;i您的方法将取决于该表是否只包含2行和2列。行和列是否总是以相同的顺序存在?如果不是,那么之前的xcode示例提供程序将起作用,如果不是,您可能需要更具创造性
我以前使用过的一种在表格中爬行的方法与此类似
定义表示表的WebElement
WebElement yourTable = driver.findElement(By.tagname("table"));
接下来,创建表示表中每一行的WebElements列表
List<WebElement> tableRows = yourTable.findElements(By.tagname("tr");
List tableRows=yourTable.findElements(按.tagname(“tr”);
最后,您可以遍历表中的行,直到找到要查找的数据
for(int i=0; i<tableRows.size(); i++){
WebElement row = tableRows.get(i);
now do whatever you want with your WebElement that represents a single row of the table;
}
for(int i=0;i