【问题标题】:CYPRESS - How to get a user's token to acess other tab in the same Cypress window, putting cy.visist(URL + TOKEN)CYPRESS - 如何获取用户的令牌以访问同一 Cypress 窗口中的其他选项卡,将 cy.visit(URL + TOKEN)
【发布时间】:2020-05-04 11:16:15
【问题描述】:

我有一个通过登录名和密码登录的系统。登录后,我有一个功能,我单击它会转到一个新的浏览器选项卡。 我试图单击按钮并转到此选项卡,但赛普拉斯失去了对应用程序的控制并打开了一个新窗口,而不是在同一个赛普拉斯窗口上打开选项卡。 当我尝试将选项卡 URL 放在 cy.visit 上以手动打开选项卡时,系统不会打开此选项卡,并返回登录页面,因为用户的令牌显示在我要访问的新选项卡的 URL 上。由于这个原因,我不能从cy.visit 访问这个标签,因为这个 URL 可以是动态的。

如何获取令牌以尝试从网站访问“URL + 令牌”并在同一赛普拉斯窗口中打开此选项卡?有什么不同的方法可以在 Cypress 测试中打开这个新标签页吗?

【问题讨论】:

    标签: testing tabs window cypress


    【解决方案1】:

    您能否以令牌不是动态的方式引导您的测试数据?还是在运行测试时已知?

    【讨论】:

    • 令牌是在我登录时创建的。所以我无法定义令牌或任何东西。例如,我访问登录的站点是“www.abc.com/home.do”,但是当系统打开一个新选项卡时,当我访问功能时,URL 是“www.abc.com/home.do” ?t=TOKEN",所以我不能把url放在cy.visit中,因为每次登录的时候token都不一样。我们使用的是同源环境。
    【解决方案2】:

    首先,询问开发人员在登录后从哪里可以获得令牌。通常它存储在 cookie 或本地存储中。

    在测试中,首先执行登录,然后读取令牌,然后使用您读取的令牌作为查询字符串导航到标签页的 URL。

    HTH

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-02
      • 1970-01-01
      • 2023-01-10
      • 2021-04-13
      相关资源
      最近更新 更多