有javascript强制Selenium测试失败

问题描述 投票:1回答:3

有没有办法让js代码强制Selenium测试失败?对于(可能很糟糕)的例子,如果我有以下内容:

return document.getElementById('foo').innerHTML == 'hello'

有没有办法让'runScript'命令失败,具体取决于js代码是返回true还是false? (我知道其他Selenium命令可以使用该示例,但我想要一个更通用的解决方案。)

我是否需要学习如何扩展Selenium以添加另一个命令?

我对Selenium也比较陌生,所以使用Selenium-rc会解决这个问题吗?

javascript selenium assertions testcase
3个回答
3
投票

assertExpression会给你你想要的东西。

例如,如果您提到的JavaScript表达式未评估为true,则以下行会导致测试失败。

<tr>
<td>assertExpression</td>
<td>javascript{this.browserbot.getCurrentWindow().document.getElementById('foo').innerHTML == 'hello'}</td>
<td>true</td>
</tr>

0
投票

这取决于你想要如何使用硒。在selenese套件中有调用verifyText等等(只有google用于selenese套件和verifyText,waitForCondition)。如果您正在使用硒遥控器,例如java比java代码中的断言要多。使用远程控制,您可以将脚本发送到页面,然后返回代码评估返回的内容。 comparsion / assertion在java客户端中完成。


0
投票

EVAL( 'asdfklj;'); // Selenium点击它老实说,我自己从未使用过它。需要尽快学习,但我认为它可以炸弹做javascript错误。

© www.soinside.com 2019 - 2024. All rights reserved.