要求是验证下表的列顺序与列标题名称的顺序是否正确。验证来自硒的表列顺序
因此,我已经写下来掩盖我的要求,它接受在所要求的顺序表标题名称的数组列表[字符串]的方法。
但它显然不通过软认定为“isDisplayed()方法总是返回“假”做我的要求。
任何人都可以建议我恳请进一步指出修改并把它固定的吗?
为表HTLM代码:
<table id="examMarkEntryExamList" class="display table table-bordered table-striped dynamic-table display_header_class">
<thead>
<tr>
<th class="text-center sortable sorted order1">Academic Year</th>
<th class="text-center sortable sorted order1">Curriculum</th>
<th class="text-center sortable sorted order1">Grade</th>
<th class="text-center sortable sorted order1">Semester/Term</th>
<th class="text-center sortable sorted order1">
<a class="pagination-cuser-point">Exam Code</a>
</th>
<th class="text-center sortable sorted order1">Actions</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td>2016-2016</td>
<td>LOCAL</td>
<td>GRADE11</td>
<td>2nd Term</td>
<td>G11SecondTerm</td>
<td>
</tr>
</tbody>
</table>
硒【JAVA]的方法来验证列的顺序
public void verifyColumnOrder(WebDriver driver, String tableId, ArrayList<String> columnHeaderList) {
SoftAssert softassert = new SoftAssert();
String relativeXpath = "//table[contains(@id,'"+tableId+"')]/";
for (String columnHeader : columnHeaderList) {
relativeXpath = relativeXpath + "/following-sibling::th[contains(.,'" + columnHeader + "')]";
softassert.assertTrue(driver.findElement(By.xpath(relativeXpath)).isDisplayed());
}
softassert.assertAll();
}
将findElements更改为findElement。否则,你将在不能编译的列表上调用getText()。否则在getText – Grasshopper
@Grasshoppe之前追加'[0]',谢谢。 –