我正在以这种方式在我的VM上运行无硒硒(PHPUnit)测试:
Xvfb :99 -ac &>/dev/null & DISPLAY=:99 java -jar selenium-server-standalone-2.33.0.jar -browserSideLog -firefoxProfileTemplate "/root/.mozilla/firefox/i5a8df1g.default"
它工作正常。现在我尝试测试一个在提交时打开一个新窗口的表单,在Selenium IDE中运行Test可以正常工作。将打开一个新窗口,可以访问它。
<tr>
<td>submit</td>
<td>//form[@action='/?ac=user&ac2=cb']</td>
<td></td>
</tr>
<tr>
<td>storeEval</td>
<td>selenium.getAllWindowNames()[1];</td>
<td>windowName</td>
</tr>
<tr>
<td>selectWindow</td>
<td>${windowName}</td>
<td></td>
</tr>
当我在IDE中使用getAllWindowNames()函数时,总是在windowName变量中得到类似“_blank123456”的内容,以便我可以使用selelctWindow($ {windowName})函数访问它
当我将它导出到PHPUnit时,我得到这个代码:
$this->submit("//form[@action='/?ac=user&ac2=cb']");
$windowName = $this->getEval("selenium.getAllWindowNames()[1];");
$this->selectWindow($windowName);
在PHPUnit中,此函数始终返回“null”,因此似乎没有新窗口。
当我使用PHPUnit函数$ this-&gt; getAllWindowNames();直接我得到一个带有1个条目的数组(主窗口的名称) 我已经禁用了FF弹出窗口拦截器,但没有任何效果。当我在xwindow上运行测试时,它也工作了。但是无尽的失败总是失败。 有什么建议使它无头工作? 真诚。 非常感谢。