如何在不使用扩展的情况下在Selenium IDE中组织"IF ELSE"?
只是为了给未来的读者总结一下:
-
"正确"和最完整的方法是从官方页面下载Selenium IDE的
Flow Control
插件(aaaall down)。我找到的最有用的链接是这个,因为它有一个完整的示例:http://selenium.10932.n7.nabble.com/if-else-statement-td4370.html
无论如何,还有一个文档和作者的博客文章解释了更多内容。
-
没有任何Selenium IDE插件(多么愚蠢的需求 - Selenium IDE本身就是一个插件!),除了用JavaScript编写整个命令之外,你什么也做不了。为此,以下函数可能会派上用场:
document.getElementById()
、document.getElementsByTagName()
、document.getElementsByClassName()
、document.querySelectorAll()
和document.evaluate()
。
使用 If..否则在Selenium IDE中,首先添加插件"SelBlock"/链接:https://addons.mozilla.org/en-US/firefox/addon/selenium-ide-sel-blocks/versions/。之后,只有您可以使用If..否则在您的测试用例中。例:
<head>
<body>
<tr>
<td>open</td>
<td>/</td>
<td></td>
</tr>
<tr>
<td>storeElementPresent</td>
<td>id=signin</td>
<td>test</td>
</tr>
<tr>
<td>echo</td>
<td>${test}</td>
<td></td>
</tr>
<tr>
<td>if</td>
<td>${test}==true</td>
<td></td>
</tr>
<tr>
<td>click</td>
<td>id=signin</td>
<td></td>
</tr>
<tr>
<td>else</td>
<td></td>
<td></td>
</tr>
<tr>
<td>clickAndWait</td>
<td>xpath=(//a[contains(text(),'Logout')])[2]</td>
<td></td>
</tr>
<tr>
<td>endIf</td>
<td></td>
<td></td>
</tr>
</body>
使用 Gotoif 条件。
下面是 Gotoif 条件的示例:
<tr>
<td>open</td>
<td>/</td>
<td></td>
</tr>
<tr>
<td>storeElementPresent</td>
<td>id=gbqfq</td>
<td>test</td>
</tr>
<tr>
<td>echo</td>
<td>${test}</td>
<td></td>
</tr>
<tr>
<td>store</td>
<td>test</td>
<td></td>
</tr>
<tr>
<td>gotoIf</td>
<td>storedVars['test']=false</td>
<td>labltest</td>
</tr>
<tr>
<td>type</td>
<td>id=gbqfq</td>
<td>test</td>
</tr>
<tr>
<td>label</td>
<td>labltest</td>
<td></td>
</tr>
</tbody></table>
</body>
</html>
谢谢