我在下面的结构中有不同的规格文件
login.cy.js
- describe
-- it.Test Valid Login
-- it.Test Invalid Login
dashboard.cy.js
- describe.verifyDashboard
-- it.verify loggedin user
-- it.verify user data
addNewUser.cy.js
- describe.verifyURL
-- it.navigateToAddUserPage
-- it.fillAllTheDetails
-- it.SubmitForm
我已经在配置文件中设置了
experimentalRunAllSpecs: true
,并且我可以从 GUI 模式按顺序运行所有规范,但问题是,从命令行运行时它不会运行所有规范。它只执行第一个login.cy.js
,其余规范都失败了,并且不会导航到我在login.cy.js
中访问过的网址。然而login.cy.js
执行并成功通过。
由于您的测试是紧密耦合的(相互依赖),您可以尝试关闭 testIsolation。
请阅读此页面https://docs.cypress.io/guides/core-concepts/test-isolation以了解完整情况,其中包括有关这种测试风格的一些注意事项。
如果你想保持耦合,你可能仍然需要通过导入其他测试来构建“运行者”测试
顺序运行.cy.js
import './login.cy.js'
import './dashboard.cy.js'
import './addNewUser.cy.js'
并在命令行中指定它
npx cypress run --spec cypress/e2e/sequential-run.cy.js