Jacoco蚂蚁代码覆盖范围



如何修复此?

对于我的程序Jacoco中的以下行显示:"错过了2个分支中的1个"

if(ia.length() < i+1){

在以下行,我会得到:"错过了4个分支中的1个"

if(ia.length() <= i+1 && ib.length() <= i+1){

整个代码:

public static int convertBits(int a, int b) {
      String ia = Integer.toBinaryString(a);
      String ib = Integer.toBinaryString(b);
      int s = 0;
      for(int i = 0;;i++){
        char a1 = '0';
        char a2 = '0';
        if(ia.length() < i+1){
          a1 = '0';
        }else{
          a1 = ia.charAt(ia.length() - i - 1);
          }
        if(ib.length() < i+1){
          a2 = '0';
        }else{
          a2 = ib.charAt(ib.length() - i - 1);
          }
        if(a1 != a2){
          s++;
        }
        if(ia.length() <= i+1 && ib.length() <= i+1){
          break;
        }
      }

jacoco是一种代码覆盖工具,可在执行后生成覆盖范围报告。可能是在手动执行之后,但通常是在执行测试之后,从而在创建中提供帮助。

条件if (ia.length() < i + 1) {有两个分支:

  1. ia.length() < i + 1 == false
  2. ia.length() < i + 1 == true

so

2个分支中的1个

表示其中一个分支是被执行的,而另一个分支则未执行。

相关内容

  • 没有找到相关文章

最新更新