我有一个弹出窗口,在提交然后自动关闭后加载,然后父窗口加载。我的问题是确保Selenium等待弹出窗口完成加载,关闭并且父窗口已完成加载。
在慢速下,以下代码可以确保我们等到弹出窗口加载:
<!--OK button.-->
<tr>
<td>click</td>
<td>name=_action</td>
<td></td>
</tr>
<tr>
<td>waitForFrameToLoad</td>
<td>null</td>
<td></td>
</tr>
<!--Pop up closes. Back to parent window.-->
在快速,以下代码有效,因为它转到下一个命令,所以需要告诉它等待弹出窗口完成加载:
<!--OK button.-->
<tr>
<td>click</td>
<td>name=_action</td>
<td></td>
</tr>
<tr>
<td>waitForElementNotPresent</td>
<td>id=head_check</td>
<td></td>
</tr>
<tr>
<td>waitForFrameToLoad</td>
<td>null</td>
<td></td>
</tr>
<!--Pop up closes. Back to parent window.-->
我的问题是我无法控制用户是以慢速还是快速运行脚本,如果我尝试waitForElementNotPresent,则速度慢会导致错误:
[error] modifyWindow: Window was closed!
答案 0 :(得分:1)
由于速度慢,我们可以通过添加暂停来“减速”它在中断的唯一步骤:
<tr>
<td>pause</td>
<td>5000</td>
<td></td>
</tr>