Как я могу выполнить, что мой код по условию с селеном? - PullRequest
2 голосов
/ 12 июня 2019

я хочу выполнить свой код по условию

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

но я запускаю выполнить мой код, я получил ошибку, как показано ниже: код

[2019-06-12 19:11:45] local.ERROR: Undefined property: 
App\WebDriver\Remote\RemoteWebDriver::$WebDriverExpectedCondition 
{"exception":"[object] (ErrorException(code: 0): Undefined property: 

и ниже мой код laravel

if($driver->findElement(WebDriverBy::xpath('//*[@id="err_common"]/p'))){
    Log::info('fail login');
} else {
    Log::info('success login');
}

Как я могу исправить это на то, что я хочу?мой уровень владения английским языком очень низкий ,,,, спасибо за просмотр моего поста

1 Ответ

0 голосов
/ 12 июня 2019

Вызов метода $driver->findElement(...) должен вызвать исключение NoSuchElementException, если этот элемент не существует.Вы должны иметь возможность обернуть свой код в блок try-catch вместо оператора if:

try {
    $driver->findElement(WebDriverBy::xpath('//*[@id="err_common"]/p'));

    Log::info('success login');
} catch (NoSuchElementException $ex)
    Log::info('fail login');
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...