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