сумерек и если еще заявления - PullRequest
0 голосов
/ 31 мая 2018

Я использую Laravel Dusk для тестирования локальных веб-сайтов, есть одна отправка, которая может перейти на одну из двух страниц, и мне интересно, может ли кто-нибудь помочь мне с этим.

Я использую оператор 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')

1 Ответ

0 голосов
/ 31 мая 2018

Комментарий TheFallen объясняет, почему он не работает.

Вы должны использовать что-то вроде этого:

$path = parse_url($browser->driver->getCurrentURL())['path'];
if (Str::startsWith($path, '/application/prevet')) {

} elseif (Str::startsWith($path, '/application/step3')) {

}
...