У меня есть случайные таймауты в тестах на кипарис - PullRequest
0 голосов
/ 28 мая 2018

Я работаю с кипарисом уже 3 месяца и пытаюсь решить эту проблему уже 2 месяца, и я действительно не знаю, как ее исправить.

Когда я запускаю все свои тесты, многие тесты не выполняются.И каждый раз это еще один тест (случайный).

У приложения, которое я тестирую, есть кнопка, которая отключена, и когда поля заполнены текстом, кнопка становится активной.но проблема в том, что кипарис нажимает на кнопку, когда кнопка все еще отключена.для активации кнопки требуется некоторое время, теперь я добавил в код следующее:

  • cy.wait ('@ budgetblindsPost')
  • cy.wait (500)

Но это тоже не работает.У меня меньше ошибок, но я все еще получаю ошибки.

Вот пример ошибки, которую я получаю

Вот также пример моего кода

1 Ответ

0 голосов
/ 09 июня 2018

Использование cy.wait() повсеместно может в конечном итоге решить проблемы, связанные с тайм-аутом, но сделает ваш набор тестов излишне медленным.Вместо этого вам следует увеличить время ожидания (ов)

Однократный

Эта команда не будет выполнена только через 30 секунд после невозможности найти объект или, если он его найдет, 30секунд невозможности щелкнуть по нему.

cy.get('#model_save', {timeout: 30000}).click({timeout: 30000});

Обратите внимание, что ваше значение 500 означает полсекунды, что может быть недостаточно.

Global

Если вы обнаружите, что во многих местах вы переопределяете тайм-аут с одним и тем же значением, вы можете увеличить его один раз для всех в конфигурации .

defaultCommandTimeout: 4000
Время ожидания в миллисекундах до истечения времени ожидания большинства команд на основе DOM

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