IDEA创建单元测试与测试覆盖率统计

8,757 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第13天,点击查看活动详情

IDEA(IntelliJ IDEA)不仅支持快速基于当前类创建单元测试,还支持代码测试覆盖率的统计,以及生成报告和标记测试运行命中的代码。

IDEA 版本:IntelliJ IDEA 2021.3.2(社区版)以上

一、单元测试

使用 IDEA 快速创建单元测试,提高开发和测试效率。

1. 创建单元测试

在需要测试的类或接口(推荐基于接口创建)名称上使用 Alt+Enter,然后选择创建测试image-20220310165442257.png 在创建测试面板配置测试的相关信息:

  • 测试库:选择单元测试框架
  • 类名:指定生成的单元测试类名
  • 超类:指定单元测试类继承的超类
  • 目标软件包:指定在哪个包下生成单元测试类
  • 生成:生成其他增强测试方法
  • 成员:选择需测试的类或接口方法,自动生成多个测试方法

image-20220310165723728.png

2. 运行单元测试

在测试方法点击 IDEA 运行图标(或使用 Ctrl+Shift+F10)运行单元测试。 image-20220310165946245.png

二、测试覆盖率

IDEA 支持详细的代码测试覆盖率统计,测试代码覆盖率越高,代码质量越高。

1. 配置测试覆盖率

在测试方法上点击 IDEA 运行图标,选择修改运行配置image-20220310170020365.png 在编辑运行配置面板下面,可以看到代码覆盖率配置,一般使用默认的指定类和软件包配置选项。

在下面选择单元测试类覆盖的类或软件包就完成了配置。 image-20220310170143111.png

2. 使用覆盖率运行

在测试方法上点击 IDEA 运行图标,选择使用覆盖率运行image-20220310170210743.png

3. 查看覆盖率报告

运行完后,会弹出覆盖率窗口展示覆盖率报告,可以查看测试覆盖的类、方法和代码行所占的比例。

点击报告中的类,可以在编辑器左侧查看测试覆盖源码的情况。

绿色表示被测试代码覆盖,红色表示没覆盖,此时需要修改单元测试代码来覆盖这部分源码。 image-20220310170609679.png

4. 导出覆盖率报告

在测试覆盖率报告面板中左侧点击导出可以导出此次测试的覆盖率报告。 image-20220310171322284.png 导出的格式是 HTML 网页,可以直接使用浏览器打开,也可以保存在服务器上,供开发人员查看。 image-20220310171111898.png 最后,作为一个后端开发人员,要养成编写单元测试的习惯,来提高代码的质量。

三、代码示例

具体的代码实现如下:

Gitee:gitee.com/code_artist…