通过 Selenium IDE 录制时,当弹出窗口打开时,它不会被录制。“在执行时显示错误消息。请帮帮我。
5 回答
如果该弹出窗口有名称,例如从 javascript window.open(URL, name) 打开。然后可以添加命令来检查弹出窗口的内容。像下面的命令:waitForPopUp | WINID | 30000 选择窗口 | winId ...关闭
但是,如果窗口没有名称,例如从 <a target="_blank"> 打开,那么您就不走运了。
访问http://wiki.openqa.org/display/SEL/Selenium+Core+FAQ#SeleniumCoreFAQ-HowdoIworkwithapopupwindow%3F了解更多详情。
Selenium IDE 无法识别任何类型的弹出窗口,要么您必须手动添加它,要么使用 Selenium RC,弹出窗口在那里处理。
您必须使用命令WaitForPopUp
和值30000
试试这个并正确记录。
不幸的是,Selenium IDE 记录/重放并不总是记录所有内容。它会尽力做到这一点,但如果有 AJAX 调用,它可能不会记录这一点。
最佳实践是使用记录来获取测试的主体,然后对其进行调整以处理它错过的部分
我建议手动将这些额外的行添加到您的测试中。
Selenium IDE 可以录制弹出窗口,下面是我通过 selenium 录制弹出窗口的代码,检查并告诉我
<tr>
<td>click</td>
<td>id=edit-legal-accept</td> // click on this then pop up is open
<td></td>
</tr>
<tr>
<td>waitForPopUp</td>
<td>CtrlWindow</td>
<td>30000</td>
</tr>
<tr>
<td>selectWindow</td>
<td>name=CtrlWindow</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Terms And Conditions</td>
<td></td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Terms & Conditions of Use</td>
<td></td>
</tr>
<tr>
<td>close</td>
<td></td>
<td></td>
</tr>
<tr>
<td>selectWindow</td> // This command used to select our main windows
<td>null</td>
<td></td>
</tr>