EclEmmaカバレッジツールについて質問がありますEclEmmaカバレッジツールは、ノード、エッジ、条件、またはパスカバレッジを実行しますか?
EclEmmaカバレッジツールはノード、エッジ、条件またはパスを実行しますか カバレッジ?説明
はあなたに
EclEmmaカバレッジツールについて質問がありますEclEmmaカバレッジツールは、ノード、エッジ、条件、またはパスカバレッジを実行しますか?
EclEmmaカバレッジツールはノード、エッジ、条件またはパスを実行しますか カバレッジ?説明
はあなたに
EclEmmaをありがとう - Javaコードカバレッジライブラリに基づいてEclipseのプラグインは、Javaバイトコードの解析を行い、JaCoCoと呼ばれています。 JaCoCo can be found in its documentationによって提供されるカバレッジカウンターの説明。あなたはそれで見ることができるように - JaCoCoので、EclEmmaが
私は、あなたがエッジカバレッジと呼ぶものがブランチカバレッジであると推測しています。条件カバレッジについて
if (a && b) { /* ... */ }
条件カバレッジは
&&
が短期でのJavaの場合は少し奇妙思える二つの試験a=true, b=false
、a=false, b=true
によって満足させることができます回路演算子 - 第2のテストは "b"の値の検索をトリガできません。
パスカバレッジに関して - JaCoCoは、以下の例を用いて実証することができるか、それを提供しない。
void fun(boolean a, boolean b) {
if (a) { /* ... */ }
if (b) { /* ... */ }
}
は例外をカウントしない、この方法スルー4つのパスがあります。したがって、フルパスカバレッジでは、a = true, b = true
,a = true, b = false
,a = false, b = true
およびa = false, b = false
の4つのテストが必要になります。しかし、JaCoCoとEclEmmaは、わずか2回のテストの後で、a = true, b = true
とa = false, b = false
の100%カバレッジを報告します。