Сконфигурируйте Jacoco с DSL Gradle и Kotlin - PullRequest
0 голосов
/ 09 мая 2019

Я пытаюсь настроить Jacoco для исключения некоторых классов из анализа, но не могу найти ни одного рабочего примера: (

Я нашел несколько образцов с afterEvaluate, но безуспешно

1 Ответ

1 голос
/ 09 мая 2019

src/main/java/org/example/A.java:

package org.example;

class A {
}

src/main/java/org/example/B.java:

package org.example;

class B {
}

src/test/java/org/example/ExampleTest.java:

package org.example;

public class ExampleTest {
  @org.junit.Test
  public void test() {
    new A();
    new B();
  }
}

build.gradle.kts:

plugins {
  java
  jacoco
}

repositories {
  mavenCentral()
}

dependencies {
  testCompile("junit:junit:4.12")
}

с использованием Gradle 5.4.1 выполнение gradle test jacocoTestReport создает следующий отчет

report

после добавления к build.gradle.kts

tasks.withType<JacocoReport> {
  classDirectories.setFrom(
    sourceSets.main.get().output.asFileTree.matching {
      exclude("org/example/B.class")
    }
  )
}

выполнение той же команды дает следующий отчет

report after exclusion

...