我正在尝试测试当用户在数字字段中键入一个不是整数的数字时是否显示验证错误。当我手动将其键入字段时会出现错误,但是当我在selenium中运行它时,js永远不会被触发,因此错误不会显示在屏幕上并且测试失败。
<tr>
<td>type</td>
<td>//*[@id='notificationTimerNum']</td>
<td></td>
</tr>
<tr>
<td>sendKeys</td>
<td>//*[@id='notificationTimerNum']</td>
<td>1.5</td>
</tr>
<tr>
<td>waitForVisible</td>
<td>//*[contains(@class, 'control-error')]//*[contains(., 'The number of minutes must be entered as a whole number')]</td>
<td></td>
我也尝试使用建议here的 fireEvent 命令而没有运气。
此外,我无法在测试环境之外的本地浏览器上运行Selenium IDE sendKeys,因为在尝试在数字字段中键入值时,sendKeys会出错。
[error] Unexpected Exception: Error: Cannot set the selection end.
答案 0 :(得分:1)
我遇到了同样的问题,在某些情况下,您必须在输入文本后向该字段发送按键,因此在带有该号码的sendKeys命令之后,请在发送之后立即执行另一个选项卡或输入按键。
sendKeys | // * [id = notificationTimerNum] | $ {KEY_TAB}(或$ {KEY_ENTER})
对我来说,“触发”字段中数据的验证,然后您可以为错误消息执行waitForVisible。
Klendathu