【问题标题】:Errors running Laravel Dusk运行 Laravel Dusk 的错误
【发布时间】:2018-03-07 02:40:45
【问题描述】:

我刚刚发现了 Laravel Dusk,我很高兴能在我的项目中使用它。但是,它似乎无法让它工作。我按照 Laravel 文档安装 Dusk。当我在终端中运行php artisan dusk 时,我得到了

  [Symfony\Component\Process\Exception\RuntimeException]
  TTY mode is not supported on Windows platform.

我发现这个 (https://github.com/laravel/dusk/pull/13/files) 我认为应该可以修复它,但我仍然收到错误。

此外,我尝试按照此处接受的答案 (https://laracasts.com/discuss/channels/testing/dusk-via-phpstorm) 通过 PhpStorm 运行 Dusk 测试,但我收到 Class config does not exist 错误。很多人说这是.env文件中的空格造成的,但这不是我的问题。

谁能帮我弄清楚 Laravel Dusk 在我的设置中发生了什么?我的 Laravel 项目是 5.4,我使用的是 Laravel Dusk 1.0,PhpStorm 是 2017.2.1

【问题讨论】:

    标签: laravel phpstorm laravel-dusk


    【解决方案1】:

    chromedriver可以自行安装到windows中,尽量不要使用laravel黄昏自带的版本。请记住,您的 chromedriver 版本需要与您当前安装的 Chrome 版本匹配,当 Chrome 更新时,您需要再次手动更新/重新安装 chromedriver。希望它不会经常发生,当有更新时,您可以从使用最新版本中受益,我觉得这真的很好:) Download it here.

    安装 chromedriver 后,您需要从命令行启动它(只需在您的下载/安装目录chromedriver 发出命令)或将其添加为服务(我不喜欢,因为我想要控制在 9515 端口上运行的服务)。

    最后你需要在你的 DuskTestCase.php 中注释掉// static::startChromeDriver();,它会尝试启动 laravel 黄昏包含的 chromedriver,因为在这种情况下,你已经在运行一个。

    再次运行黄昏测试,一切正常。

    我不知道您的系统设置是什么,但我在带有 Laravel 5.5、黄昏 2.0 的 Windows 10 上使用此解决方法,当 chrome 更新时仍然会导致问题。

    顺便说一句。顺便提一下。这也适用于使用 docker 的 CI 工作流。你可以阅读更多关于它here

    【讨论】:

    • 谢谢,我认为这有效。但现在我收到一个错误,上面写着Class 'Tests\DuskTestCase' in \tests\Browser\ExampleTest.php on line 9。知道这是什么,还是不相关的错误?
    • @Larisa 我不能说没有错误描述和/或源代码,但一个小提示可能是......你有正确定义的命名空间和使用上下文吗?
    • 是的,一切似乎都已正确定义。除了运行composer require --dev laravel/dusk:^1.0php artisan dusk:install之外,我没有做任何更改
    • @Larisa 我想帮助你,但我仍然不知道你收到的确切错误是什么......
    • 我创建了一个新问题,以便更好地解释问题。你可以在这里看到它stackoverflow.com/questions/47946717/…。谢谢!
    猜你喜欢
    • 2018-03-24
    • 2017-09-06
    • 2019-03-21
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    • 2017-06-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多