4

私のコードのステートメントカバレッジをチェックするとき:

 double programme(double x, double y)
 {
    double z 
    if(x>=5){
      z = 15;
    }
    else if(x>=3){
      z= 10;
    }
    else {
      z=0;
    }
    if (y>z)
    {
      z=y;
    }

    return z;
}

2 つのテスト ケースを使用する (例: テスト 1: x = 6, y = 10 とテスト 2: = 3, y =5)

ステートメントのカバレッジが 100% に等しいか 66% に等しいかはわかりません。最後の if ステートメントは両方とも false であるため、カウントするかどうかわからないという事実に基づいています。

4

1 に答える 1

4

メソッドには 8 つのステートメントがあります。3 つの条件、4 つの代入、およびreturn:

  1. if (x>=5)
  2. z=15
  3. if (x>=3)
  4. z=10
  5. z=0
  6. if (y>z)
  7. z=y
  8. 戻る

最初のテスト ケースは、ステートメント 1、2、6、および 8 をカバーします。2 番目のテスト ケースは、ステートメント 1、3、4、6、および 8 をカバーします。 8 分の 6 または 75% のカバレッジ。

于 2015-03-22T19:39:09.077 に答える