我有在本地运行良好的测试。我的env变量在cypress.json
文件中:
{
"env": {
"TEST_URL": "...",
"USER_EMAIL": "...",
"USER_PWD": "..."
}
}
在circleci中,我将环境变量设置为CYPRESS_
前缀。
问题是当我循环运行测试时,似乎正在使用环境变量名称而不是值。这是我得到的错误:
CypressError: cy.visit() failed trying to load:
CYPRESS_TEST_URL
We failed looking for this file at the path:
/root/app/CYPRESS_TEST_URL
The internal Cypress web server responded with:
> 404: Not Found
我看不到任何明显错误的内容。测试在本地运行良好。这似乎是失败的原因:
Cypress.Commands.add('stagingLogin', () => {
cy.visit(Cypress.env('TEST_URL'));
cy.url()
.should('include', 'users/sign_in');
cy.get('input[name="user[email]"]')
.type(Cypress.env('USER_EMAIL'))
.should('have.value', Cypress.env('USER_EMAIL'));
cy.get('input[name="user[password]"]')
.type(Cypress.env('USER_PWD'))
.should('have.value', Cypress.env('USER_PWD'));
cy.contains('Log in')
.click();
})