1

我正在使用 Selenium IDE 进行一些测试。但几乎没有坚持一个动作 - 我需要关闭 FF 中的下载弹出窗口。

执行此操作的常用方法是使用 selectWindow 命令,但是 - 我的弹出窗口 - 它实际上是一个框架,因此它没有 ID 和其他对 IDE 有用的参数。

我关闭此弹出窗口的所有尝试都导致关闭主窗口。我尝试过这样的事情,但也没有奏效:

<tr>
    <td>click</td>
    <td>css=#fpm &gt; img</td>
    <td></td>
</tr>
<tr>
    <td>waitForFrameToLoad</td>
    <td>http://www.somesite.com/lg/c.do?proj=1111&amp;aid=1111&amp;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,但我不知道如何使用。你能建议吗?

4

1 回答 1

0

最后,我找到了一种方法......有点棘手,但它有效。因此,这是一个 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>
于 2013-03-12T18:30:30.720 回答