我想阻止JEST运行任何测试,如果缺少环境变量,则显示错误。
我知道可以在setupFilesAfterEnv
中进行一些设置,但是我看不到如何在此停止JEST。
谢谢
答案 0 :(得分:1)
我认为最好的方法实际上是在运行命令本身之前(使用bash或cmd或其他js脚本)检查环境变量。
例如,如果要从npm脚本中检查1个变量,则可以执行以下操作:
super().call()
更新:
您也可以从// 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"
}
中退出该过程,但是我想这是一个hack,因为您还只能通过1次失败的测试来限制自己。
Jest文档中的参考:https://jestjs.io/docs/en/configuration#bail-number-boolean
Jest