Laravel dusk 更改 URL
Laravel dusk changes the URL
我已经为 Laravel 安装了 dusk,但从一开始所有测试都失败了。而不是查看我想要的页面,他们都 return 一个 404 错误。
为了找出 URL 测试试图进行的测试而不是我想要的测试,我设置了一个自定义 404 页面并将以下代码放入其中:
$_SERVER['REQUEST_URI']
现在测试 return 它试图获得的 URL 我发现它在 URL 的末尾添加了一个“/session”例如,如果我尝试检查:
'http://localhost/', DesiredCapabilities::chrome()
测试returns
<p>The requested URL /session was not found on this server.</p>
如果我这样设置 URL:
'http://localhost/fortest', DesiredCapabilities::chrome()
测试将return:
<p>The requested URL /fortest/session was not found on this server.</p>
我不知道这是否与 Laravel/dusk 或 PHPUnit 或 Selenium 有关。任何帮助表示赞赏。
正如我在对 的回答中所指出的,配置 APP_URL
以匹配您的本地开发环境非常重要。
/sessions
通常是使用本机会话驱动程序时的默认会话文件位置。
首先使用默认的 Selenium 服务器 URL 和端口创建远程 Web 驱动程序实例:
'http://localhost:9515', DesiredCapabilities::chrome()
然后 运行 您的第一个测试位于 Browser/ExampleTest.php
并验证当前 URL.
您可以像这样快速转储当前 URL:
public function testBasicExample() {
$this->browse( function ( Browser $browser ) {
$browser->visit( '/' );
var_dump( $browser->driver->getCurrentURL() );
} );
}
我已经为 Laravel 安装了 dusk,但从一开始所有测试都失败了。而不是查看我想要的页面,他们都 return 一个 404 错误。
为了找出 URL 测试试图进行的测试而不是我想要的测试,我设置了一个自定义 404 页面并将以下代码放入其中:
$_SERVER['REQUEST_URI']
现在测试 return 它试图获得的 URL 我发现它在 URL 的末尾添加了一个“/session”例如,如果我尝试检查:
'http://localhost/', DesiredCapabilities::chrome()
测试returns
<p>The requested URL /session was not found on this server.</p>
如果我这样设置 URL:
'http://localhost/fortest', DesiredCapabilities::chrome()
测试将return:
<p>The requested URL /fortest/session was not found on this server.</p>
我不知道这是否与 Laravel/dusk 或 PHPUnit 或 Selenium 有关。任何帮助表示赞赏。
正如我在对 APP_URL
以匹配您的本地开发环境非常重要。
/sessions
通常是使用本机会话驱动程序时的默认会话文件位置。
首先使用默认的 Selenium 服务器 URL 和端口创建远程 Web 驱动程序实例:
'http://localhost:9515', DesiredCapabilities::chrome()
然后 运行 您的第一个测试位于 Browser/ExampleTest.php
并验证当前 URL.
您可以像这样快速转储当前 URL:
public function testBasicExample() {
$this->browse( function ( Browser $browser ) {
$browser->visit( '/' );
var_dump( $browser->driver->getCurrentURL() );
} );
}