8

记录的测试脚本包括谷歌搜索。

点击“谷歌搜索”后,下一步是点击测试结果中的链接,但是在播放过程中,这发生在浏览器加载结果之前,因此解决方案似乎是在搜索后添加延迟。我尝试了两种方法:

  • 将“click”更改为“clickAndWait”,值为 1000。这很有效。1000 的值不会改变默认值 30000ms,播放需要 30s 才能完成该步骤。

  • 在单击之前调用“setTimeout”,值为 1000。这对 clickAndWait 的超时行为没有影响。

这是脚本:

<tr>
        <td>open</td>
        <td>/</td>
        <td></td>
</tr>
<tr>
        <td>type</td>
        <td>q</td>
        <td>test search</td>
</tr>
<tr>
        <td>setTimeout</td>
        <td></td>
        <td>1000</td>
</tr>
<tr>
        <td>clickAndWait</td>
        <td>btnG</td>
        <td>1000</td>
</tr>
<tr>
        <td>click</td>
        <td>link=CLEP Test Center Search</td>
        <td></td>
</tr>
<tr>
        <td>clickAndWait</td>
        <td>link=Home</td>
        <td></td>
</tr>

如果有人可以建议,非常感谢。

4

1 回答 1

12

我会通过在单击链接之前添加 waitForElementPresent 命令来推荐另一种解决方案。

  • 打开 /
  • type q 测试搜索
  • 点击btnG
  • waitForElementPresent 链接=CLEP 测试中心搜索
  • 点击链接=CLEP 考试中心搜索
  • waitForElementPresent 链接=主页
  • 点击链接=首页

您可以在http://www.infoq.com/articles/testing-ajax-selenium找到一个很好的解释

于 2010-09-14T03:22:16.670 回答