【问题标题】:Laravel 5.2 test DOM changedLaravel 5.2 测试 DOM 更改
【发布时间】:2016-06-01 13:09:18
【问题描述】:

我正在使用 Laravel 5.2,并且我的页面具有 ID 为 new-item 的按钮,当我单击它时,javascript 代码会加载带有表单的远程引导模式,并显示模式。

我想用 Laravel 测试 PHPUnit 的功能。我已经写了这个测试:

$this->visit('/');
     ->click('new-item');
     ->seeElement('.modal');

页面运行良好,但测试失败。我收到页面没有.modal 元素的错误,它还向我显示了页面的html。 但是 html 看起来像在将远程模态插入页面之前的原始页面。

那么如何在javascript改变DOM后强制测试刷新页面内容呢?

【问题讨论】:

    标签: php laravel-5 phpunit laravel-5.2


    【解决方案1】:

    Laravel 默认使用 PHPUnit 和 PHPBrowser 进行测试。 PHPBrowser 不支持 Javascript。如果你想测试 javascript,你需要使用 selenium 和 codeception 之类的东西。 Codeception 有一个内置的 Laravel 适配器,所以它仍然非常易于使用。我在许多应用程序中都使用过它,而且效果非常好。

    http://codeception.com/docs/modules/Laravel5

    对于支持 javascript 的无头浏览器还有其他选项,这只是一个选项。

    【讨论】:

      猜你喜欢
      • 2016-09-02
      • 1970-01-01
      • 1970-01-01
      • 2019-03-27
      • 1970-01-01
      • 2018-06-02
      • 2016-04-12
      • 1970-01-01
      • 2017-04-10
      相关资源
      最近更新 更多