根据您的要求,当您尝试在 DAMP 和 DRY 原则之间找到正确的平衡时,您不想使用page class
我认为是公平的。我可以建议以下文本/消息的最小用法:
一个。使用 import 而不是 readFile
赛普拉斯/夹具/testData.json:
{
"text": "variable name from json file"
}
cypress/integration/spec.js(测试文件):
import * as testData from '../fixtures/testData'
cy.get("element").should("have.text", testData.text)
湾。使用fixtures而不是readFile
赛普拉斯/夹具/testData.json:
{
"text": "variable name from json file"
}
cypress/integration/spec.js(测试文件):
cy.fixture('testData').then((data) => {
cy.get("element").should("have.text", data.text)
})
C。使用自定义的 POM / 选择器文件:(我在我的项目中使用这个堆)
赛普拉斯/pages/loginPage.js:
export const testDataModel = {
text: "variable name from json file"
}
cypress/integration/spec.js(测试文件):
import {testDataModel} from '../pages/loginPage'
cy.get("element").should("have.text", testDataModel.text)