Visual Studio Code 中的 Java 代码覆盖率

Ste*_*ssi 7 java code-coverage maven visual-studio-code

我在 Maven 帮助下将 VSC 用于我的 Java 项目。我想使用代码覆盖率工具,但我在您拥有的许多可能性中迷失了方向。
我的目标是:

  • 使用 Maven 运行代码覆盖率目标;
  • 使用Coverage Gutter等插件在 VSC 中显示测试覆盖率

使用哪种代码代码覆盖率工具?
有人可以告诉我正确的 Maven 插件和配置 VSC 的方法吗?

谢谢,
S。

cre*_*332 3

先决条件

  • Java Extension Pack扩大
  • Coverage Guttersryanluker 扩展:显示生成的测试覆盖率
  • Live PreviewMicrosoft 的扩展:在 VSCode 中渲染 HTML 文件
  • 一个带有一些测试的 Maven 项目

脚步

将其添加jacoco-maven-plugin到您的pom.xml文件中。该插件将生成代码覆盖率报告。

<plugin>
    <groupId>org.jacoco</groupId>
    <artifactId>jacoco-maven-plugin</artifactId>
    <version>0.8.4</version>
    <executions>
        <execution>
            <goals>
                <goal>prepare-agent</goal>
            </goals>
        </execution>
        <execution>
            <id>report</id>
            <phase>prepare-package</phase>
            <goals>
                <goal>report</goal>
            </goals>
        </execution>
    </executions>
</plugin>
Run Code Online (Sandbox Code Playgroud)

通过在终端中运行以下命令来生成 jacoco 报告:

mvn jacoco:prepare-agent test install jacoco:report
Run Code Online (Sandbox Code Playgroud)

您应该看到一个新创建的文件target/site/jacoco/index.html

注意:每次对测试进行更改时,您都需要重新运行上述命令以确保代码覆盖率报告准确。

查看详细报告

打开 HTML 文件 ( target/site/jacoco/index.html),然后单击 VS Code 右上角的放大图标。(必须安装实时预览扩展) 在此输入图像描述

在此输入图像描述

显示内联覆盖范围

单击WatchVS Code 左下角工具栏中的 。(必须安装 Code Gutters 扩展) 在此输入图像描述

查看您为其编写测试的类: 在此输入图像描述

绿色条表示您的测试已达到该代码。橙色条表示错过了条件检查。红色条表示您的测试未达到的代码。

参考