【问题标题】:Cypress cache - server session expired赛普拉斯缓存 - 服务器会话已过期
【发布时间】:2021-02-11 12:59:32
【问题描述】:

赛普拉斯能否在每次测试前清除浏览器 cookie/缓存? 我有这个问题: 第一次执行没问题,但第二次由于缓存而失败。 我试过这个cy.clearCookies(),但不起作用。

在第二次执行期间,我收到消息“服务器会话已过期”。

【问题讨论】:

  • 赛普拉斯能否在每次测试前清除浏览器 cookie/缓存?
  • cy.clearCookies() 在某些情况下为我工作,但由于我也有一个问题,即在案例之间没有清除状态 - 我的团队决定我永远不会在每个测试文件中放置一个以上的案例,并且将它们分组到文件夹中。试试这个方法。
  • 不,没有办法以编程方式清除缓存。 Cypress 仅在打开浏览器时清除缓存,如 here 所述。

标签: cypress qa


【解决方案1】:

虽然我认为默认情况下每个it 块都以清除缓存开始。以下命令可能对您有用

cy.clearLocalStorage()

文档在这里: https://docs.cypress.io/api/commands/clearlocalstorage#Command-Log

你可以这样包装

before(function () {
cy.clearLocalStorage();
});

describe("Some useful description", () => {
// your 'it' blocks here
})

或者,如果您想在每次测试后以编程方式清除缓存,请尝试:

describe("Some useful description", () => {

 afterEach(() => {
    cy.clearLocalStorage()
});

// your 'it' blocks here
})

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    • 1970-01-01
    • 2020-12-23
    • 1970-01-01
    • 2022-10-01
    • 2023-02-08
    • 1970-01-01
    相关资源
    最近更新 更多