如何阻止k6在阈值不达标时导致CI环境构建失败?
解决k6阈值不达标导致CI构建失败的问题
你之前配置里的abortOnFail: false只控制测试过程中是否提前终止,并不会改变测试结束后因阈值不达标返回非0退出码的默认行为——而CI正是通过退出码判断构建是否失败的。以下是两种有效解决方法:
方法1:修改阈值配置,禁用失败标记
在每个阈值规则里添加failOnError: false,这会让k6即使检测到阈值不达标,也不会将测试标记为失败(返回0退出码):
thresholds: { 'http_req_duration{type:firstQuery}': [ { threshold: 'p(95)>500', abortOnFail: false, failOnError: false }, ], 'http_req_duration{type:secondQuery}': [ { threshold: 'p(95)>500', abortOnFail: false, failOnError: false }, ], },
方法2:使用命令行参数忽略阈值检查
如果不需要阈值的任何失败判断,直接在运行k6时添加--no-thresholds参数,完全跳过阈值验证:
k6 run your-script.js --no-thresholds
内容的提问来源于stack exchange,提问作者Mostafa Said
相关产品推荐
相关产品推荐

