Laravel Dusk 2.0 / Laravel 5.5返回空白页

时间:2018-11-28 03:33:24

标签: laravel laravel-5 laravel-dusk

我正在将Laravel 5.3网站升级到5.5,并且无法使Dusk在我的本地主机上正常工作。我有其他单元测试可以在我的本地主机上正常工作,但是由于某种原因,Dusk对于任何本地页面都返回"<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body></body></html>"。在我的桌面上浏览本地页面似乎效果很好。

我的DuskTestCase

protected function driver()
{
    $options = (new ChromeOptions)->addArguments([
        '--disable-gpu',
        '--headless',
        '--no-sandbox',
        '--ignore-certificate-errors'
    ]);

    return RemoteWebDriver::create(
        'http://localhost:9515',
        DesiredCapabilities::chrome()
        ->setCapability(WebDriverCapabilityType::ACCEPT_SSL_CERTS, true)
        ->setCapability('acceptInsecureCerts', true)
        ->setCapability(
            ChromeOptions::CAPABILITY, $options
        )
    );
}

我的样品测试

public function testBasicExample()
{
    $this->browse(function (Browser $browser) {

            $result = $browser->visit('http://localhost');
            $browser->screenshot('test');
            $browser->dump();
    });
}
  • chrome驱动程序可以很好地调用google.com并转储内容
  • 将网址硬编码到localhost以进行测试
  • 页面是http而不是https
  • 在尝试测试之前尝试过php artisan服务,结果相同
  • 尝试缓存/配置清除
  • 创建了一个.env.dusk.local文件,似乎没有影响
  • chromedriver -v是ChromeDriver 2.44.609551
  • 尝试127.0.0.1没有骰子

1 个答案:

答案 0 :(得分:0)

我可以使其正常工作的唯一方法:

public function testBasicExample()
{
    $this->browse(function (Browser $browser) {
        $browser->visit(env('APP_URL').'/home')
                ->assertSee('Laravel');
    });
}