如何阻止 cypress 在每个测试用例(它)之后关闭浏览器?

Yog*_*ath 3 mocha.js ui-automation cypress

我有一个像这样的 cy.js 文件

/// <reference types="cypress" />
context("Dummy test cases", () => {
  it("open Google", () => {
    cy.visit("www.google.com");
  });

  it("search a keyword", () => {
    cy.get(".gLFyf").type("cypress{enter}");
  });
});
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我有 2 个测试用例。一是打开网站,二是做其他任务。但问题是,完成第一个“it”(测试用例 1)后,浏览器关闭,然后下一个用例失败,因为没有活动浏览器。

你能帮助我如何阻止 cypress 在执行每个测试用例后关闭浏览器吗?

小智 7

我发现 Cypress 对某些事情相当固执,其中最重要的是“测试隔离”,这意味着一项测试不得影响另一项测试。

请注意,每个it()都是一个测试。

为了使您的代码正常工作,您必须关闭测试隔离。

如果cypress.config.js文件添加选项

const { defineConfig } = require("cypress");

module.exports = defineConfig({
  e2e: {
    setupNodeEvents(on, config) {
      // implement node event listeners here
    },
    testIsolation: false,
  },
})
Run Code Online (Sandbox Code Playgroud)

如果您使用的是同样的typescript