我正在使用 Selenium IDE 进行一些测试。但几乎没有坚持一个 Action - 我需要关闭 FF 中的下载弹出窗口。
执行此操作的常用方法是使用 selectWindow 命令,但是 - 我的弹出窗口 - 它实际上是一个框架,因此它没有 ID 和其他对 IDE 有用的参数。
我关闭此弹出窗口的所有尝试都会导致关闭主窗口。 我试过这样的东西,但也没有用:
<tr>
<td>click</td>
<td>css=#fpm > img</td>
<td></td>
</tr>
<tr>
<td>waitForFrameToLoad</td>
<td>http://www.somesite.com/lg/c.do?proj=1111&aid=1111&rnd=0.132456</td>
<td></td>
</tr>
<tr>
<td>pause</td>
<td>5000</td>
<td></td>
</tr>
<tr>
<td>close</td>
<td></td>
<td></td>
</tr>
<tr>
过去有人遇到过这个问题吗?我知道,此时可以使用 JS,但我不知道如何使用。你能建议吗?
最佳答案
最后,我找到了一个方法... 有点棘手,但它有效。所以,这是一个 IDE 错误,IDE 无法识别打开的“_blank”窗口。这是解决方法:
<tr>
<td>storeAttribute</td>
<td>//a[@'Here you can use id/class/href/rel link, etc, for ex: @rel='Register']/@href</td>
<td>href</td>
</tr>
<tr>
<td>openWindow</td>
<td>${href}</td>
<td></td>
</tr>
<tr>
<td>pause</td>
<td>2000</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>selenium.getAllWindowNames()[1];</td> -- [1] - window to select from array of window names, 0 - it's a main, 1 - 1st opened pop up, 2 - 2nd, etc.
<td>windowName</td>
</tr>
<tr>
<td>pause</td>
<td>2000</td>
<td></td>
</tr>
<tr>
<td>selectWindow</td>
<td>${windowName}</td>
<td></td>
</tr>
<tr>
<td>verifyElementPresent</td>
<td>Verify something here</td>
<td></td>
</tr>
<tr>
<td>close</td> -- close pop up
<td></td>
<td></td>
</tr>
<tr>
<td>selectWindow</td> -- return to main window
<td>null</td>
<td></td>
</tr>
关于testing - 使用 Selenium IDE 关闭弹出框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15281743/