0

这个问题主要是关于phpunit_selenium2扩展的(尽管也欢迎一般的想法):

假设我有一个页面在浏览器/标签关闭事件上触发警报,如下所示:

window.onbeforeunload = function() {
    return 'Hello world!';
};

测试打开此页面,执行一些操作,根据测试场景我需要打开另一个 url。

问题是命令

$this->url('/another/page/url');

等待页面 url 被更改并失败,因为它没有 - 因为它被刚刚出现的警报窗口锁定:RuntimeException: Navigation failed with error code=3.

一个人将如何解决这个问题?

4

1 回答 1

0

我能想到的丑陋但唯一的解决方案:

try {
    $this->url('/another/page/url');
} catch (RuntimeException $e) {}
$this->acceptAlert();
于 2013-01-14T21:38:31.177 回答