Как эмулировать потерянный фокус окна в Cypress.io - PullRequest
0 голосов
/ 18 мая 2018

Я пишу тесты E2E для веб-сайта, использующего Cypress.io.Одной из функций, которую я хотел бы проверить, является то, что сайт правильно определяет потерю фокуса и отображает диалоговое окно (угловой материал).У меня проблема в том, что я не могу найти надежный способ вызвать потерю фокуса окна в среде тестирования.Я просмотрел документацию по различным событиям фокуса и размытия в Cypress.io, но выхожу пустым.Кто-нибудь знает, возможно ли программно вызвать потерю фокуса окна (размытие) из Cypress.io, и если да, то есть ли документация или примеры, которым я мог бы следовать?

1 Ответ

0 голосов
/ 19 мая 2018

Это зависит от того, как ваша страница прослушивает это событие, поэтому есть несколько возможных решений:

Попробуйте:

cy.window().trigger('blur')

Если это не сработает, попробуйте:

cy.document().then((doc) => {
  cy.stub(doc, "hidden").value(true)
})
cy.document().trigger('visibilitychange')

В некоторых случаях

...