改进 Cypress 结构并重用多个文件中的给定步骤

mee*_*eez 5 cucumber reactjs cypress

我使用 Cypress 和 Cucumber 进行端到端测试。

我有以下 Cypress 结构:

page-one/
another-page/
cypress/integration/page-one/check-hero.js
cypress/integration/page-one/check-custom-block.js
cypress/integration/page-one.feature
cypress/integration/another-page.feature
Run Code Online (Sandbox Code Playgroud)

在这两个文件中check-hero.jscheck-custom-block.js我有:

Given('I navigate to page one', () => {
  cy.visit(`${Cypress.env('baseUrl')}/page-one`);
});
Run Code Online (Sandbox Code Playgroud)

我可以改进这个结构以使其更加干燥并在多个文件中重用此给定步骤吗?

pav*_*man 3

您可以创建可重用的步骤定义,正如他们在cypress-cucumber-preprocessor的官方文档中所说的那样。

cypress/integration/common/您可以在您的步骤中创建一个文件Given,然后在 和 中使用cypress/integration/page-one/check-hero.jscypress/integration/page-one/check-custom-block.js。如果我很好地理解文档,那么具有可重用步骤的文件实际上可以具有任何名称,例如visit.js在您的示例中。