-1

Visual Studioで奇妙なカバレッジ結果があります。ifステートメントがカバーされていないように見えますが、ブロックに入ったので、カバーされていたに違いありません。なぜそれらの結果は間違っているのですか?(これらの結果は、多くの条件下での多くの実行をカバーしています)

スクリーンショット

4

1 に答える 1

1

各パスをたどる可能性のあるすべての組み合わせをテストしていないため、表示されているのはブランチカバレッジだと思います。論理積(&&)は早期エスケープを許可します。つまり、最初の演算子がtrueの場合にのみ2番目の演算子を評価します。

例えば

if (bool.TryParse(savePrep, out save) && save)

3つの可能性があります

  1. savePrep = "true"
  2. savePrep = "false"
  3. savePrep="どちらでもない-true-nor-false"

あなたはおそらく#1と#2だけを行使したことがあります

于 2013-01-14T02:23:11.423 に答える