在Cypress中,你可以通过几种方式访问环境变量。support/commands.js
文件通常用于定义全局命令或修改默认命令。要在 support/commands.js
中访问环境变量,你可以使用 Node.js 的 process.env
对象。
以下是如何在 support/commands.js
中访问环境变量的步骤:
首先,你需要在你的项目中设置环境变量。这通常在项目的根目录下的 .env
文件中完成,或者通过命令行在运行测试时指定。
例如,在 .env
文件中:
API_KEY=your_api_key_here
BASE_URL=https://api.example.com
为了使 Cypress 能够读取 .env
文件中的环境变量,你需要安装 dotenv
包,并在你的 cypress/support/index.js
文件中加载它。
安装 dotenv
:
npm install dotenv
然后在 cypress/support/index.js
中添加以下代码:
require('dotenv').config();
support/commands.js
中访问环境变量现在你可以在 support/commands.js
文件中通过 process.env
访问这些变量了。例如:
Cypress.Commands.add('getApiKey', () => {
return process.env.API_KEY;
});
Cypress.Commands.add('getBaseUrl', () => {
return process.env.BASE_URL;
});
在你的测试文件中,你可以这样使用这些自定义命令:
describe('My Test Suite', () => {
it('should use environment variables', () => {
cy.getApiKey().then((apiKey) => {
expect(apiKey).to.not.be.undefined;
});
cy.getBaseUrl().then((baseUrl) => {
expect(baseUrl).to.equal('https://api.example.com');
});
});
});
.env
文件没有被添加到版本控制系统中(例如,在 .gitignore
文件中列出)。API_KEY=your_api_key_here BASE_URL=https://api.example.com npx cypress run
这样,你就可以在 Cypress 的 support/commands.js
文件中访问和使用环境变量了。
参考链接:
领取专属 10元无门槛券
手把手带您无忧上云