node.js - 如何设置环境变量以及如何将环境变量作为参数传递
问题描述
在 package.json 文件中,我在脚本下有一些任务列表
"scripts": {
"test:smoketest":"cucumber-js --format json:./reports/cucumber-json-report.json --tags '@Smoke_Test'",
"test:regressiontest":"cucumber-js --format json:./reports/cucumber-json-report.json --tags '@Regression_Test'",
"test:UI":"cucumber-js --format json:./reports/cucumber-json-report.json --tags '@UI'"
},
我将使用命令执行脚本 例如: npm run test:smoketest(npm run test:testname) 我想在函数中传递这个测试名称来检查 if 条件
测试.js
async function(){
if(testname=="UI"){
some tasks need to be done
}
else{
some task need to be done
}
谁能帮帮我吗。提前致谢
解决方案
在终端中创建运行时环境变量的步骤
首先我们需要安装命令npm install dotenv --save-dev。此命令将在您的节点模块文件夹中安装 dotenv 模块。
为了在运行时(执行期间)设置环境变量,我们需要执行命令
type=<type name> npm run test:<test name>
例如:type=Uitest npm run test:UI
此命令将在执行 UI 测试时创建一个值为 Uitest 的运行时变量类型
将此环境变量作为参数传递给 test.js 文件
async function(){
if(process.env.type=="Uitest"){
some tasks need to be done
}
else if(process.env.type!="Uitest"){
some task need to be done
}
else{
some task need to be done
}
-----当环境变量为 Uitest 类型时执行代码时,将执行 if 下的代码集。当环境变量不是 Uitest 类型时,else if 下的代码集将被执行。当在运行时没有设置环境变量时
例如:npm 运行测试:UI
然后 else 中的代码集将被执行。谢谢
推荐阅读
- javascript - 从浏览器窗口以编程方式给出的视觉通知
- train-test-split - 发现样本数量不一致的输入变量: [26707, 5] ,但我的样本数据范围相同
- machine-learning - Adam Optimizer 不更新值
- r - R:从 Lexicon 中的推文中查找单词,计算它们并将数字保存在带有推文的数据框中
- influxdb - Flux 中单个与多个链式 lambda 之间的性能或执行差异
- typescript - 在 Typescript 中删除对象键并返回条件类型
- lotus-notes - 不允许使用数据库上下文
- methods - 如何将方法作为函数参数传递?
- terminal - vim zz 命令使光标在屏幕上居中
- android - 无法在 Android 上读取从我的背部 Spring 下载的 pdf 文件