我正在使用Silenium IDE来测试网站的表格数据。我有Flow Control插件,但我有一个棘手的循环。
我需要检查表的每一行,其数据包含某些文本。每行的ID具有不同的#标识给定的行。没有循环我会做以下测试:
assertTable id=ctl_MainPlaceLog.1.0 071-01
assertTable id=ctl_MainPlaceLog.2.0 071-01
assertTable id=ctl_MainPlaceLog.3.0 071-01
assertTable id=ctl_MainPlaceLog.4.0 071-01
etc...
正如您所看到的,当您向下移动表格时,ID的行数会增加。有没有办法运行一个循环,它将检查表的相同ID,但在每次迭代中将增加ID#行中的行?这样我就可以在循环中运行表,每次迭代只改变相同元素ID的行的#。
谢谢。
伊利亚安德
答案 0 :(得分:0)
我认为以下代码可以帮助您完成工作
<tr>
<td>store</td>
<td>1</td>
<td>i</td>
</tr>
<tr>
<td>storeElementPresent</td>
<td>id=ctl_MainPlaceLog.${i}.0</td>
<td>present</td>
</tr>
<tr>
<td>while</td>
<td>${present}==true</td>
<td></td>
</tr>
<tr>
<td>assertText</td>
<td>ctl_MainPlaceLog.${i}.0</td>
<td>071-01</td>
</tr>
<tr>
<td>storeEval</td>
<td>${i}+1</td>
<td>i</td>
</tr>
<tr>
<td>storeElementPresent</td>
<td>id=ctl_MainPlaceLog.${i}.0</td>
<td>present</td>
</tr>
<tr>
<td>endWhile</td>
<td></td>
<td></td>
</tr>