[英]Handling multiple tables using selenium webdriver
我正在檢查網頁上的文件夾層次結構,具體取決於用戶的類型。 User1具有一組權限,使他能夠查看如下文件夾結構:
Main Folder
- First Child
-First Grandchild
-Second Grandchild
- Second Child
- Third Child
樹的每個分支都是一個由1行組成的表。 但是列的數量根據世代的不同而不同。
“主文件夾”父級只有1列。 單元格內容是字符串“主文件夾”。
子分支有2列,第一個單元格包含空白,下一個單元格包含分支的名稱(“第一個子級”,“第二個子級”)。
孫子分支有3列,第一個和第二個單元格包含空白,第三個單元格包含分支的名稱(“第一個孫子”,“第二個孫子”)。
HTML代碼:
<div id = 0>
<div id = 1>
<table id = 1>
<tbody>
<tr>
<td id="content1"
<a id="label1"
<span id="treeNode1"
Main Folder
</span>
</a>
</td>
</tr>
</tbody>
</table>
<div id = 2>
<table id = 2>
<tbody>
<tr>
<td>
<td id="content2"
<a id="label2"
<span id="treeNode2"
First Child
</span>
</a>
</td>
</td>
</tr>
</tbody>
</table>
<div id = 5>
<table id = 5>
<tbody>
<tr>
<td>
<td>
<td id="content5"
<a id="label5"
<span id="treeNode5"
First GrandChild
</span>
</a>
</td>
</td>
</td>
</tr>
</tbody>
</table>
</div>
<div id = 6>
<table id = 6>
<tbody>
<tr>
<td>
<td>
<td id="content6"
<a id="label6"
<span id="treeNode6"
Second GrandChild
</span>
</a>
</td>
</td>
</td>
</tr>
</tbody>
</table>
</div>
</div> /* End of division 2 */
<div id = 3>
<table id = 3>
<tbody>
<tr>
<td>
<td id="content3"
<a id="label3"
<span id="treeNode3"
Second Child
</span>
</a>
</td>
</td>
</tr>
</tbody>
</table>
</div>
<div id = 4>
<table id = 4>
<tbody>
<tr>
<td>
<td id="content4"
<a id="label4"
<span id="treeNode4"
Third Child
</span>
</a>
</td>
</td>
</tr>
</tbody>
</table>
</div>
</div> /*End of division 1 */
</div> /* End of division 0 */
User2具有一組不同的權限,這使他能夠查看如下文件夾結構:
Main Folder
- First Child
-First Grandchild
- Second Child
- Third Child
該用戶的html代碼中沒有相應的表。
我的測試用例是檢查User2是否無權訪問第二個孫代。 這意味着我需要確保網頁上不存在特定的表。
我如何檢查硒呢? 我在測試用例中使用JUnit。 我想做一個“斷言”以確保第二個孫子不存在。
您將要檢查該元素是否不存在或不可見。 在肯定的false中調用isElementVisible()
應該可以解決問題。 只需獲取要檢查的元素的“按位置”即可。
private boolean isElementVisible(By by)
{
try
{
return driver.findElement(by).isDisplayed();
}
catch(NoSuchElementException e)
{
return false;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.