Как использовать Cypress ViewPort Обновить перезагрузить - PullRequest
0 голосов
/ 08 мая 2019

Сайт должен работать только в мобильном Интернете (отображает сообщение об ошибке в настольном Интернете), пытаясь автоматизировать его с помощью окна просмотра Cypress.

Шаги ручного тестирования: в chrome мы запускаем URL-адрес в настольном веб-приложении, страница ошибки отображения приложения Затем перейдите в режим эмулятора Chrome, обновите приложение, отобразится фактическая страница.

Автоматизация с использованием Cypress: запуск приложения, сворачивание в мобильное представление, перезагрузка приложения.

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

Мой код выглядит ниже

    cy.visit('url')
    cy.viewport('iphone-6')
    cy.wait(200)

Может ли кто-нибудь помочь в этом?

1 Ответ

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

После прочтения вашего комментария, если вы хотите инициализировать свой тест в мобильном представлении, вам нужно поместить ваш cy.viewport() вызов в beforeEach хук.

Примерно так:

context('iphone-6 resolution', function () {
    beforeEach(function () {
      // run these tests as if in a mobile browser
      // and ensure our responsive UI is correct
      cy.viewport('iphone-6')
    })

    it('your test logic', function () {
      ...
    })
  })

Я не знаю, правильно ли я понял, в чем проблема, но вы можете cy.reload() принудительно перезагрузить страницу после изменения области просмотра.

cy.visit('url')
cy.viewport('iphone-6')
cy.reload()

Вы можете найти больше информацииоб этой команде в документации Cypress здесь .

...