Ошибка тайм-аута для элемента уже нажал - PullRequest
0 голосов
/ 23 мая 2019

Я получаю исключение ниже, даже если мой элемент уже был нажат, и я перешел на следующую страницу.

Причина: org.openqa.selenium.TimeoutException: ожидаемое состояние ошибка: ожидание нажатия элемента: [[ChromeDriver: chrome on XP (56f040029c23126b0087ff1dfa82369e)] -> xpath: // * [@ ID = 'логина'] / приложение корневое / приложение-кафе-вход / дела / дела / дела [2] / форма / дела / дела / дела / кнопка [3]] (пробовал в течение 10 секунд с интервалом 500 миллисекунд)

Проверка XPAth, но, так как элемент уже нажал, они не уверены, почему возникает ошибка.

Описание : нажмите кнопку входа в систему

 action: org.getopentest.selenium.Click
        args:
          locator: { xpath: "//*[@id='login']/app-root/app-caf-login/div/div/div[2]/form/div[3]/div/div/button" }

Описание: пауза на 60 секунд

action: org.getopentest.selenium.ActionsPause
        args:
          durationMs: "60000"

Ожидается: ошибки не должно быть

1 Ответ

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

Как описано в этом ответе , убедитесь, что вы не используете аргумент sendEnter: true ни с одним из действий SendKeys.Когда вы передаете sendEnter: true, действие будет «нажимать» клавишу ввода после отправки ключей в элемент текстового поля.Таким образом, в основном в тесте, который вы показали, первое действие будет вводить имя пользователя и затем нажимать ввод, таким образом, пытаясь войти без пароля, что, конечно, не удастся.

Кроме того, вы используете ключевое слово ActionsPauseнеправильно (подробнее здесь ).Если вы хотите ввести задержку в свой тест, вы можете использовать API $ delay () , но вам очень редко нужно делать это с OpenTest, так как синхронизация встроена, то есть все действия теста, которыевыполнить некоторую работу над элементом пользовательского интерфейса, знать, как ждать, пока этот элемент будет доступен, прежде чем выполнять работу.

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