tongchenkeji 发表于:2023-11-1 9:11:310次点击 已关注取消关注 关注 私信 云效自定义步骤时,红线检测有问题,怎么解决?[阿里云云效] 暂停朗读为您朗读 云效自定义步骤时,红线检测有问题,怎么解决?我现在设置的是覆盖率大于等于60通过,实际覆盖率71.4,没有通过红线的key我看也是能对上的,麻烦帮忙看下是哪里的问题 「点点赞赏,手留余香」 赞赏 还没有人赞赏,快来当第一个赞赏的人吧! 海报 阿里云云效# 云效3181
小周sirAM 2023-11-28 8:23:51 1 在云效自定义步骤时遇到红线检测问题,可能是由于多种原因造成的。以下是一些可能的解决方案: 检查你的代码是否符合红线检测的要求。对于每个红线检测项,都有详细的描述和示例,以帮助你理解它们的具体要求。 确保你的代码风格一致。不一致的代码风格可能会导致红线检测出现问题。 如果你正在使用第三方库,确保它们也符合红线检测的要求。 使用最新的红线检测插件。有些旧版的插件可能无法正确检测出问题。 如果以上所有方法都无法解决问题,你可以考虑联系云效的技术支持团队寻求帮助。
sun20AM 2023-11-28 8:23:51 2 根据您的描述,您在云效自定义步骤中设置了覆盖率大于等于60通过,但实际覆盖率为71.4时仍然没有通过。红线检测的问题可能与以下因素有关: 检查您的代码覆盖率报告是否正确生成并上传到云效中。确保您已经正确配置了代码覆盖率工具,并且生成的报告可以被云效识别和解析。 确认您的代码覆盖率报告中的覆盖率数据是否准确。您可以使用其他工具或手动检查代码来验证覆盖率数据的准确性。如果发现覆盖率数据有误,请修复代码以确保正确的覆盖率数据被生成。 检查您的自定义步骤中的红线检测规则是否正确设置。确保您已经正确地指定了要检测的代码文件、函数或行,并且设置了正确的阈值条件。如果您的规则设置正确,但仍然无法通过红线检测,可能是由于其他原因导致的。
圆不溜秋的小猫猫AM 2023-11-28 8:23:51 3 您在推送这个步骤的本地看一下,应该有一个 .step/readline.sh的脚本,里面有这个只能比较整数,是这里的问题,这个文件得改一下 可以改一下这三行判断的写法:if [ echo "$2 > $threshold" | bc -eq 1 ];then echo true; else echo false; fiif [ echo "$2 == $threshold" | bc -eq 1 ];then echo true; else echo false; fiif [ echo "$2 < $threshold" | bc -eq 1 ];then echo true; else echo false; fi 此回答整理自钉群“云效交付域答疑群”
在云效自定义步骤时遇到红线检测问题,可能是由于多种原因造成的。以下是一些可能的解决方案:
根据您的描述,您在云效自定义步骤中设置了覆盖率大于等于60通过,但实际覆盖率为71.4时仍然没有通过。红线检测的问题可能与以下因素有关:
检查您的代码覆盖率报告是否正确生成并上传到云效中。确保您已经正确配置了代码覆盖率工具,并且生成的报告可以被云效识别和解析。
确认您的代码覆盖率报告中的覆盖率数据是否准确。您可以使用其他工具或手动检查代码来验证覆盖率数据的准确性。如果发现覆盖率数据有误,请修复代码以确保正确的覆盖率数据被生成。
检查您的自定义步骤中的红线检测规则是否正确设置。确保您已经正确地指定了要检测的代码文件、函数或行,并且设置了正确的阈值条件。如果您的规则设置正确,但仍然无法通过红线检测,可能是由于其他原因导致的。
您在推送这个步骤的本地看一下,应该有一个 .step/readline.sh的脚本,里面有这个只能比较整数,是这里的问题,这个文件得改一下
可以改一下这三行判断的写法:
if [
echo "$2 > $threshold" | bc
-eq 1 ];then echo true; else echo false; fiif [
echo "$2 == $threshold" | bc
-eq 1 ];then echo true; else echo false; fiif [
echo "$2 < $threshold" | bc
-eq 1 ];then echo true; else echo false; fi 此回答整理自钉群“云效交付域答疑群”