laravel dusk 和 if else 语句
laravel dusk and if else statements
我正在使用 laravel dusk 来测试本地网站,
有一个提交可以转到 2 页之一,我想知道是否有人可以帮助我。
我正在使用 if elseif 语句,但无法查看下一个 url 路径的开头
$this->browse(function (Browser $browser) {
$browser->visit('/')
->mouseover('@Appliances-mouseover')
->type('@enter-city', 'Location')
->type('@enter-postal-code', '0165')
->click('@select-province')
->click('@selected-province-some-province')
->click('@select-hear-about-us')
->click('@hear-about-us-email')
->click('@agree-terms')
->press('@submit-step-1');
// prevet or step 3 forms in application B
if ($URL = $browser-
>assertPathBeginsWith('/application/prevet')) {
$browser->screenshot('Prevet form')
->assertUrlIs('/application/prevet')
->pause(25000);
} elseif ($URL = $browser-
>assertPathBeginsWith('/application/step3')) {
$browser->screenshot('step3 form')
->assertUrlIs('/application/step3')
->click('@uploadPayslip')
->assertSee('Personal Documents')
TheFallen 的评论解释了为什么它不起作用。
你必须使用这样的东西:
$path = parse_url($browser->driver->getCurrentURL())['path'];
if (Str::startsWith($path, '/application/prevet')) {
} elseif (Str::startsWith($path, '/application/step3')) {
}
我正在使用 laravel dusk 来测试本地网站, 有一个提交可以转到 2 页之一,我想知道是否有人可以帮助我。
我正在使用 if elseif 语句,但无法查看下一个 url 路径的开头
$this->browse(function (Browser $browser) {
$browser->visit('/')
->mouseover('@Appliances-mouseover')
->type('@enter-city', 'Location')
->type('@enter-postal-code', '0165')
->click('@select-province')
->click('@selected-province-some-province')
->click('@select-hear-about-us')
->click('@hear-about-us-email')
->click('@agree-terms')
->press('@submit-step-1');
// prevet or step 3 forms in application B
if ($URL = $browser-
>assertPathBeginsWith('/application/prevet')) {
$browser->screenshot('Prevet form')
->assertUrlIs('/application/prevet')
->pause(25000);
} elseif ($URL = $browser-
>assertPathBeginsWith('/application/step3')) {
$browser->screenshot('step3 form')
->assertUrlIs('/application/step3')
->click('@uploadPayslip')
->assertSee('Personal Documents')
TheFallen 的评论解释了为什么它不起作用。
你必须使用这样的东西:
$path = parse_url($browser->driver->getCurrentURL())['path'];
if (Str::startsWith($path, '/application/prevet')) {
} elseif (Str::startsWith($path, '/application/step3')) {
}