Php Laravel 5.2测试DOM更改
我使用的是Laravel 5.2,我的页面上有一个id为new item的按钮,当我点击它时,javascript代码会加载一个带有表单的远程引导模式,并显示该模式 我想用Laravel测试PHPUnit的功能。我写了这个测试:Php Laravel 5.2测试DOM更改,php,laravel-5,phpunit,laravel-5.2,Php,Laravel 5,Phpunit,Laravel 5.2,我使用的是Laravel 5.2,我的页面上有一个id为new item的按钮,当我点击它时,javascript代码会加载一个带有表单的远程引导模式,并显示该模式 我想用Laravel测试PHPUnit的功能。我写了这个测试: $this->visit('/'); ->click('new-item'); ->seeElement('.modal'); 页面工作正常,但测试失败。我得到一个错误,页面没有.modal元素,并且它还显示了页面的html。 但
$this->visit('/');
->click('new-item');
->seeElement('.modal');
页面工作正常,但测试失败。我得到一个错误,页面没有.modal
元素,并且它还显示了页面的html。
但是html看起来像远程模式插入到页面之前的原始页面
那么,如何在javascript更改DOM后强制测试刷新页面内容呢?默认情况下,Laravel使用PHPUnit和PHPBrowser进行测试。PHPBrowser不支持Javascript。如果您想测试javascript,您需要使用selenium和codeception之类的东西。Codeception有一个内置的Laravel适配器,因此它仍然非常易于使用。我已经在很多应用程序中使用过它,而且效果非常好 对于支持javascript的无头浏览器,还有其他选项—这只是一个选项