如何使用cypress视口刷新重载

时间:2019-05-08 15:55:50

标签: javascript node.js automation cypress

该网站应该只能在移动网络上运行(在桌面网络上显示错误消息),并尝试使用赛普拉斯视口将其自动化。

手动测试步骤:在chrome中,我们正在桌面Web应用程序中启动URL,应用程序显示错误页面。然后更改为chrome仿真器模式,刷新应用程序,将显示实际页面。

使用cypress自动化:启动应用程序,最小化移动视图,重新加载应用程序。

预期,重新加载页面后,实际的应用程序页面应显示在移动设备视图中,但错误页面显示在移动设备中。

我的代码如下所示

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

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

阅读评论后,如果要在移动视图中初始化测试,则需要将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()

您可以在赛普拉斯文档here中找到有关此命令的更多信息。