Элемент с кодом xpath не найден

Я использую CodeCeption для проверки работоспособности веб-сайта. Я никогда не использовал CodeCeption, и я просто пытаюсь заставить работать свой первый тест. Я просто хочу войти в систему, но в моем поле входа используется пользовательский интерфейс jQuery (что означает, что кнопка входа не имеет идентификатора). Веб-сайт: https://moveourmountain.org.

Я использовал это в консоли Chome:

$x('//button/span[text()="Login"]')

и получил такой ответ:

[<span class=​"ui-button-text">​Login​</span>​]

так что мой xpath правильный и выбирает правильную вещь. Однако в CodeCeption у меня есть это:

$I = new AcceptanceTester($scenario);
$I->wantTo('Login as a regular user.');
$I->amOnPage('/');
$I->click('LOGIN');
$I->fillField('email', '[email protected]');
$I->fillField('password', 'test123');
$I->click(['xpath' => '//button/span[text()="Login"]']);
$I->see('MY ACCOUNT');

и каждый раз, когда я запускаю его, я получаю это в своем терминале:

Sorry, I couldn't click {"xpath":"//button/span[text()="Login"]"}:
Element with xpath '//button/span[text()="Login"]' was not found on page.

Scenario Steps:
5. I click {"xpath":"//button/span[text()="Login"]"}
4. I fill field "password","test123"
3. I fill field "email","[email protected]"
2. I click "LOGIN"
1. I am on page "/"

Я использую PhpBrowser, если это имеет значение. Любая помощь приветствуется. Я понятия не имею, как это протестировать, потому что он явно не разрешает то же самое, что и хром.


person Kenyon    schedule 27.06.2014    source источник
comment
Я не могу найти ваш шаблон поиска на веб-странице. Я могу найти только <h2>Login</h2> и <a onclick="openLogin()">LOGIN</a>.   -  person Marcus Rickert    schedule 28.06.2014
comment
Он находится в диалоговом окне, которое открывается функцией openLogin(). Тем не менее, я работал над своей проблемой, я переключился на использование WebDriver и chromedriver вместо PhpBrowser. Я оставил вопрос здесь, так как на самом деле не знаю ответа, только обходной путь.   -  person Kenyon    schedule 28.06.2014


Ответы (1)


Попробуйте изменить свой accept.suite.yml.

Вместо PhpBrowser используйте WebDriver.

person Pi. P    schedule 23.09.2015