如何在@vue/cli项目中禁用Jest警告仅显示错误?
嘿,我来帮你搞定这个需求!在@vue/cli项目里让Jest只显示错误、屏蔽警告,有几种实用的方法,我给你一步步讲清楚:
方法1:临时生效(不用改配置)
如果你只是偶尔需要这个效果,直接在运行测试的命令里加参数就行:
# npm的写法,注意--是用来把参数传递给Jest npm run test -- --no-warnings # yarn的写法 yarn test --no-warnings
这个--no-warnings参数会让Node.js层面屏蔽所有警告信息,只输出测试错误和必要的结果汇总。
方法2:永久配置(一劳永逸)
如果想每次运行测试都自动屏蔽警告,就把配置写到项目文件里,有几种方式可选:
方式A:修改package.json
打开项目根目录的package.json,找到jest配置块(没有的话就新增一个),添加全局环境变量配置:
{ // 其他package.json内容... "jest": { "globals": { "process.env": { "NODE_NO_WARNINGS": "1" } } } }
方式B:使用单独的jest.config.js
如果项目里已经有根目录下的jest.config.js,或者你想单独管理Jest配置,新建/修改这个文件:
module.exports = { // 保留你已有的其他Jest配置... globals: { 'process.env': { NODE_NO_WARNINGS: '1' } } }
方式C:通过Vue CLI的vue.config.js配置
对于@vue/cli生成的项目,也可以直接在vue.config.js里配置Jest,更贴合Vue项目的配置体系:
module.exports = { // 其他Vue CLI配置(比如devServer、css之类的)... configureJest: config => { // 给Jest的全局变量加上禁用警告的配置 config.globals['process.env'].NODE_NO_WARNINGS = '1'; return config; } }
额外小提示
如果你不想完全屏蔽所有Node警告,只是想关掉Jest自身的警告,可以试试--silent参数,但这个会关掉除了错误和最终测试汇总之外的所有输出。如果需要更精细的过滤,就得自定义Jest的reporter了,不过一般用上面的NODE_NO_WARNINGS方法就足够满足需求啦。
内容的提问来源于stack exchange,提问作者user3025289
相关产品推荐
相关产品推荐

