からcombined-ut-it-multimodule-maven-jacoco
例を挙げましたSonar github
。基本的に、この例には、単体テストを含む 1 つのモジュールと、統合テストを含む別のモジュールがあります。カバー率の結果は、UT が 40%、IT が 50% で、全体のカバー率は 80% です。
app
次に、モジュール内のカバーされていないコードの新しい単体テストを追加しました。
package example;
import org.junit.Test;
public class HelloWorldAnotherUnitTest {
@Test
public void test() {
new HelloWorld().notCovered();
}
}
カバー率の結果は、UT が 60%、IT が 50% で、全体のカバー率は 100% です。ここまでは順調ですね。
そのテストをモジュールに切り替えたところapp
、app-it
カバー率の結果は UT で 40%、IT で 70% で、全体的なカバー率は 100% でした。ここでは、前回の報道と同じ結果を期待していました。
したがって、特定のモジュールのカバレッジは、ユニットまたは統合のいずれかになるようです。それはバグですか?