我有以下文件夹结构:
tests
cypress.env.json
cypress
fixtures
integration
test
test.spec.ts
plugins
support
我错过了关于不必要文件的问题。
所以我的cypress.env.json看起来像这样:
{
"loginTestStage": {
"admin": {
"username": "value1",
"password": "value2"
},
"user": {
"username": "value3",
"password": "value4"
}
},
"vatid" : {
"x1": "value5",
"x2": "value6",
"x3": "value7",
"x4": "value8"
}
}
现在我尝试在test.spec.ts文件中访问环境变量:
describe('Login', () => {
const usernameInput = '[formcontrolname="username"]';
const passwordInput = '[formcontrolname="password"]';
beforeEach(() => {
cy.visit(url)
})
it('Allow users with valid credentials to login', () => {
const { username, password } = Cypress.env('loginTestStage').admin;
cy.get(usernameInput).type(username);
cy.get(passwordInput).type(password);
...
})
})
当我尝试运行测试时,总是会出现这个错误:
Cannot read properties of undefined (reading 'admin')
因此,无法找到Env变量的值。
如何解决这个问题?
提前致谢
tests
文件夹中。当我将其移动到上一级时,Cypress.env('loginTestStage').admin
被正确加载。 - Fody