【问题标题】:The Cypress test does not open the Powerapps pageCypress 测试未打开 Powerapps 页面
【发布时间】:2021-10-26 15:45:30
【问题描述】:

我正在尝试运行简单的 cypress 测试并得到如下错误:

但如果我将访问网址更改为另一个 - 它会正常打开:

我不明白为什么这个网址会出现这个错误:

"baseUrl":"https://apps.powerapps.com/play/f1t75er8-03c9-4cc7-996d-6743cd7eac4a"

另一个可见的错误:

代码:

describe("Create request",  () => {
    it("Should have a link that navigates to office365 login",  () => {
    cy.visit("/");
    cy.get('div[class="loginNeededText_uf5ohz"]').contains('Sign in to start using Power Apps');
      });
    });

附注也无法加载https://apps.powerapps.com/ 页面。错误:

【问题讨论】:

  • 你是如何认证的?
  • 我应该认证什么?

标签: testing automation automated-tests cypress ui-automation


【解决方案1】:

当我使用您的基本 URL https://apps.powerapps.com/play/f1t75er8-03c9-4cc7-996d-6743cd7eac4a 时,我在控制台中只看到空白屏幕和 404 错误,我没有被重定向到登录。

也许您的网址应该是https://apps.powerapps.com,登录后您可以导航到“/play/f1t75er8-03c9-4cc7-996d-6743cd7eac4a”。

【讨论】:

【解决方案2】:

一般

对于赛普拉斯,您不应该尝试visit or interact with sites or servers you do not control。 Cypress 的主要目的是测试,所以当你尝试用它做任何其他事情时,任务会变得更加复杂(你可以在the Cypress documentation 阅读更多关于它的信息)。

如果您确实需要来自第 3 方站点的信息,建议您通过 API 来完成 — 主要使用 cy.request() 方法(例如,Microsoft 有关于如何使用 Office 365 Management API 的大量文档) .

您的情况

当您访问 apps.powerapps.com 时,您将被重定向到 Microsoft 登录页面 - 它具有不同的域名,这会破坏 same-origin policy,从而导致跨域错误赛普拉斯控制台。

您在baseUrl 中指定的页面似乎返回了404 状态代码,以及控制台中一些丑陋的CORS 错误,这表明应用程序本身存在问题。在你解决了这些问题之后,你很可能无论如何都会面临身份验证的需要,最好通过 API 来完成。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-02-10
    • 2021-08-07
    • 2021-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多