我有一个弹出窗口,在提交后加载然后自动关闭,然后加载父窗口。我的问题是确保 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!