Javascript 防止JEST根据环境变量运行
我希望防止JEST运行任何测试,并在缺少环境变量时显示错误 我知道在SetupFileAfterEnv中进行一些设置是可能的,但我不知道如何才能停止在那里开玩笑Javascript 防止JEST根据环境变量运行,javascript,jestjs,Javascript,Jestjs,我希望防止JEST运行任何测试,并在缺少环境变量时显示错误 我知道在SetupFileAfterEnv中进行一些设置是可能的,但我不知道如何才能停止在那里开玩笑 谢谢我认为最好的方法实际上是在使用bash、cmd或其他js脚本运行命令之前检查环境变量 例如,如果要检查npm脚本中的1个变量,可以执行以下操作: // with bash //package.json "scripts": { "test": "[[ -z \"$MY_ENV\" ]] && echo \"M
谢谢我认为最好的方法实际上是在使用bash、cmd或其他js脚本运行命令之前检查环境变量 例如,如果要检查npm脚本中的1个变量,可以执行以下操作:
// with bash
//package.json
"scripts": {
"test": "[[ -z \"$MY_ENV\" ]] && echo \"MY_ENV NOT FOUND!\" || jest"
}
//with JS
//env-checker.js
if (!process.env.hasOwnProperty('MY_ENV')) {
console.error('could not find MY_ENV!')
process.exit(1)
}
//package.json
"scripts": {
"test": "node env-checker.js && jest"
}
更新:
您也可以从Jest中退出该过程,但我认为这是一种黑客行为,因为您还将自己限制为只有一个失败的测试。
Jest文档中的参考:
是的,这是一个明显的选择,我认为这可能在jest@gilamran有一种方法,不管怎样,是一种老套的方法。我将更新添加到我的答案中。
//in jest config
{
"setupFiles": ["./env-checker.js"],
"bail": 1
}