赛普拉斯无法从 process.env 文件中获取变量
Cypress can't get variables from process.env file
我在 cypress 测试中从 process.env 文件获取变量值时遇到问题。我试着按照这个去做:https://docs.cypress.io/guides/guides/environment-variables#Option-5-Plugins
但是当我尝试使用进程环境文件中的变量时出现未定义的错误
我的 index.js 文件:
const { preprocessTypescript } = require('@nrwl/cypress/plugins/preprocessor');
require('dotenv').config();
module.exports = (on, config) => {
on('file:preprocessor', preprocessTypescript(config));
[
'DB_USER',
'DB_PASS',
'DB_SNOWFLAKE_ACCOUNT',
'DB_SNOWFLAKE_DATABASE',
'DB_SNOWFLAKE_ROLE',
'DB_SNOWFLAKE_SCHEMA',
'DB_SNOWFLAKE_WAREHOUSE'
].forEach(v => {
config.env[v] = process.env[v];
});
return config;
};
process.env 文件(在根文件夹中)
DB_SNOWFLAKE_ACCOUNT=www.xyz.com
DB_USER=xyzxyz
DB_PASS=xyzxyzxyz
DB_SNOWFLAKE_DATABASE=XYZX
和test.spec.ts
const snowflakeUrl: string = Cypress.env('DB_SNOWFLAKE_ACCOUNT');
const userName: string = Cypress.env('DB_USER');
const password: string = Cypress.env('DB_PASS');
const database: string = Cypress.env('DB_SNOWFLAKE_DATABASE');
文件名应为 .env
,这就是 dotenv 的作用。
然后它将环境变量加载到 process.env
对象中。
我在 cypress 测试中从 process.env 文件获取变量值时遇到问题。我试着按照这个去做:https://docs.cypress.io/guides/guides/environment-variables#Option-5-Plugins 但是当我尝试使用进程环境文件中的变量时出现未定义的错误
我的 index.js 文件:
const { preprocessTypescript } = require('@nrwl/cypress/plugins/preprocessor');
require('dotenv').config();
module.exports = (on, config) => {
on('file:preprocessor', preprocessTypescript(config));
[
'DB_USER',
'DB_PASS',
'DB_SNOWFLAKE_ACCOUNT',
'DB_SNOWFLAKE_DATABASE',
'DB_SNOWFLAKE_ROLE',
'DB_SNOWFLAKE_SCHEMA',
'DB_SNOWFLAKE_WAREHOUSE'
].forEach(v => {
config.env[v] = process.env[v];
});
return config;
};
process.env 文件(在根文件夹中)
DB_SNOWFLAKE_ACCOUNT=www.xyz.com
DB_USER=xyzxyz
DB_PASS=xyzxyzxyz
DB_SNOWFLAKE_DATABASE=XYZX
和test.spec.ts
const snowflakeUrl: string = Cypress.env('DB_SNOWFLAKE_ACCOUNT');
const userName: string = Cypress.env('DB_USER');
const password: string = Cypress.env('DB_PASS');
const database: string = Cypress.env('DB_SNOWFLAKE_DATABASE');
文件名应为 .env
,这就是 dotenv 的作用。
然后它将环境变量加载到 process.env
对象中。