Cypress 运行旧代码而不是运行更新的代码更改

eri*_*-rt 19 node.js yarnpkg cypress

我在 Cypress.io 上遇到了一个问题,我没有看到太多有用的信息。本质上,每当我对代码进行更改(例如实现新方法、删除旧方法等)并保存时,测试运行程序都会继续执行我的测试文件。但是,它运行更改之前存在的代码。我尝试过实现钩子、消除钩子、每次运行后关闭仪表板、清除应用程序数据;但不确定问题的根源是什么。

对于上下文,我正在使用 Yarn 运行 cypress (yarn cypress open以打开仪表板)并将我的测试文件保存在cypress/integration/.

Val*_*iia -1

我遇到了这个问题,然后对我有帮助的是在每次测试之前清除缓存,因为赛普拉斯似乎默认情况下没有禁用缓存。

我添加了一个自定义命令:

Cypress.Commands.add('clearCache', { prevSubject: false }, () => {
  localStorage.clear()
  indexedDB.deleteDatabase('cypress')
  return true
})
Run Code Online (Sandbox Code Playgroud)

然后我在beforeEach()钩子中调用它,以便在每次运行测试之前清除缓存:

 beforeEach(() => {
  cy.clearCache();
});
Run Code Online (Sandbox Code Playgroud)

我希望这个对你有用。如果您有任何疑问,请告诉我