Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用

  JaCoCo 是 Java 中的一个开源的代码覆盖率测试工具。在 IDEA 中自带了三种代码覆盖率测试工具,分别是 Intellij IDEA、JaCoCo、Emma。可以在 Edit Configurations… 中进行配置。

一、创建项目

  在 IDEA 中创建最简单的 Java 项目即可,将测试代码放入其中。
  本次实验测试代码如下:

import java.util.Scanner;

public class test {
    public static void main(String[] args){
        Scanner scan = new Scanner(System.in);

        int w;
        int isContinue = 1;

        while (isContinue > 0){
            System.out.println("input w :");
            w = scan.nextInt();

            switch (w%7) {
                case 1:
                    System.out.println("一");
                    break;
                case 2:
                    System.out.println("二");
                    break;
                case 3:
                    System.out.println("三");
                    break;
                case 4:
                    System.out.println("四");
                    break;
                case 5:
                    System.out.println("五");
                    break;
                case 6:
                    System.out.println("六");
                    break;
                case 0:
                    System.out.println("七");
                    break;
            }

            System.out.println("isContinue(0/1)?");
            isContinue = scan.nextInt();
        }

    }
}
二、运行

  直接右键选择 RUN “……” with Coverage 或者点击右上角的运行图标即可运行。
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第1张图片

三、结果

  运行完成后会自动生成对应的覆盖结果(默认测试工具为 Intellij IDEA)。
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第2张图片
  点击结果旁边的生成覆盖报告图标,输入保存路径,可以生成对应的HTML文件。
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第3张图片
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第4张图片
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第5张图片
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第6张图片

四、更改测试工具

  在右上角中选择 Edit Configurations… 可以对测试工具进行选择,默认选择为 Intellij IDEA,可以进行修改。
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第7张图片
  修改为 JaCoCo 工具后测试结果如下所示(Emma工具需要另行下载 jar 包):
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第8张图片
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第9张图片
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第10张图片
Intellij IDEA中代码覆盖率测试工具 JaCoCo 简单使用_第11张图片
  注:红色方块:没有覆盖(在这一行中没有分支被执行)
    黄色方块:部分覆盖(这一行的分支中只有一部分被执行)
    绿色方块:完全覆盖(这一行的所有分支都被执行)


参考文章:【1】EclEmma - JaCoCo Java Code Coverage Library

你可能感兴趣的:(软件测试)