Laravel сумерек, если browser-> assertSee, тогда сделайте это - PullRequest
0 голосов
/ 04 июня 2019

Есть ли способ продолжить тест, даже если assertSee возвращается с ошибкой.

Это мой текущий код:

$browser->visit('https://urltotest.co.uk/find-an-engineer/')
        ->type("EngineerId", $engineerId)
        ->click('#checkEngineer');

$test = $browser->assertSee("Engineer cannot be found");

Что я хотел бы сделатьis go:

if ($test == false) {
    return false;  
} else {
    return $browser->text('.engineer-search-results-container .search-result .col-md-8 .row .col-xs-10 h3');
}

Но когда assertSee не удается, все, что я получаю, это:

Did not see expected text [Engineer cannot be found] within element [body].

Как исключение.В любом случае я могу продолжить, если не смог найти этот элемент?

1 Ответ

2 голосов
/ 04 июня 2019

Вы должны достичь этого, используя try catch, чтобы поймать исключение:

try {
    $browser->assertSee("Engineer cannot be found");
} catch(\Exception $e) {
    return false;
}

К сведению, я не знаю, есть ли такой метод, как $browser->fail() (например, $this->fail() в phpunit), который не пройдет тест для вас.

...