Visual Studio Code 中的 Java 代码覆盖率

问题描述 投票:0回答:2

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

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

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

谢谢,
S.

java maven visual-studio-code code-coverage
2个回答
4
投票

目前,我认为没有办法显示 java 代码的内联覆盖率。这并不是您问题的真正答案,但可能会有所帮助。您可以运行测试(也许在 vscode 中创建一个任务),然后在浏览器中观看代码覆盖率报告。 对于 gradle 来说是:

./gradlew test jacocoTestReport

然后查看报告

build/TestCoverageReport/test/html/index.html

您也可以使用 Maven 轻松做到这一点。


0
投票

先决条件

  • Java Extension Pack
    扩展
  • Coverage Gutters
    ryanluker 扩展:显示生成的测试覆盖率
  • Live Preview
    Microsoft 扩展:在 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>

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

mvn jacoco:prepare-agent test install jacoco:report

您应该会看到一个新创建的文件

target/site/jacoco/index.html

查看详细报告

打开 HTML 文件 (

target/site/jacoco/index.html
),然后单击 VS Code 右上角的放大图标。 (必须安装实时预览扩展)

显示内嵌覆盖率

单击 VS Code 左下工具栏中的

Watch
。 (必须安装 Code Gutters 扩展)

查看您为其编写测试的类:

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

参考文献

© www.soinside.com 2019 - 2024. All rights reserved.