Элемент, который мне нужно использовать, находится на странице, но Robot Framework не может его найти - PullRequest
0 голосов
/ 26 июня 2019

Я работаю над веб-страницей с 1 видимым текстовым полем.

<div class="col-xs-5 pull-right search-bar">
            <input class="form-control search-box ng-pristine ng-untouched ng-valid" id="searchBox" placeholder="Enter a supplier or a catalog name" ng-model="query" ng-change="search()">
        </div>

Когда я пытаюсь дождаться, пока элемент будет видим, используя:

Wait Until Page Contains Element    xpath=//input[@id="searchBox"]    60

Я получаю ошибкупоговорка:

Element 'xpath = //input[@id="searchBox"]' did not appear in 1 minute.

Я искал элемент, используя приведенный выше xpath, который дает мне только 1 результат при поиске вручную в браузере.Я попытался использовать тег div для его поиска.Элемент находится на странице немедленно и не требует времени для загрузки.

Ответы [ 2 ]

0 голосов
/ 02 июля 2019

Если вы используете id, вам не нужно использовать xpath, поэтому

Wait Until Page Contains Element  id=searchBox    60

Должно быть хорошо.

Кроме того, для доступа к элементу необходимо убедиться, что: 1) это видно 2) Это включено 3) Над ним нет другого элемента (например, оверлейных элементов)

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

Вы можете попробовать этот формат:

Wait Until Page Contains Element  xpath://input[@id='searchBox']  60

Явная стратегия локатора указывается с префиксом с использованием синтаксической стратегии: значение или стратегия = значение. Первый синтаксис является предпочтительным, поскольку последний идентичен синтаксису именованных аргументов Robot Framework, что может вызвать проблемы. Пробелы вокруг разделителя игнорируются, поэтому id: foo, id: foo и id: foo эквивалентны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...