查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo

1、什么是 IDEA

IDEA 全称 IntelliJ IDEA,是 Java 编程语言开发的集成环境。IntelliJ 在业界被公认为最好的 Java 开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE 支持、各类版本工具(git、SVN 等)、JUnit、CVS 整合、代码分析、 创新的 GUI 设计等方面的功能可以说是超常的。

2、什么是 JaCoCo

JaCoCo 是一个免费、开源 Java 代码覆盖率工具。

3、IDEA 为什么要集成 JaCoCo

方便查看单元测试用例覆盖率。

4、集成步骤

4.1、被测类

注意:被测类要放在 main 下面,而不是 test 下面

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第1张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

4.2、单元测试用例

注意:单元测试类(CalcTest)必须和被测类(Calc)在同一个包下(com.lemon.testng)

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第2张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

4.3、配置 Code Coverage

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第3张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

选择 Edit Configurations

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第4张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

选择 Code Coverage,再选择 JaCoCo

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第5张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

右键选择 Run with Coverage

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第6张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

自动弹出代码覆盖率界面

4.4、覆盖率报表

报表相对简单,Class 表示类覆盖率,Method 表示方法覆盖率,Line 表示行覆盖率

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第7张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

4.5、代码覆盖情况

单元测试用例主只写了 add 方法,所以 add 方法显示绿色,覆盖状态,sub 方法显示红色,未被覆盖。

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第8张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

新增一个 sub 方法测试用例,再来看结果。

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第9张图片

​编辑切换为居中

添加图片注释,不超过 140 字(可选)

首先 Method 从 1 变成 2,Line 数也增多了。

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第10张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

其次,sub 方法颜色也有变化,if 仍是红色, 但是 else 变成绿色,说明 eles 分支被覆盖。

查看单元测试用例覆盖率新姿势:IDEA 集成 JaCoCo_第11张图片

编辑切换为居中

添加图片注释,不超过 140 字(可选)

5、总结

通过上述例子可以看出,通过查看覆盖率,逐步善测试用例,写出的用例至少能保障每个分支都被执行,相比通过需求写用例更能排查出潜在 bug。

需求 ≠代码,不能仅围绕需求写用例,借助 JaCoCo 覆盖率工具编写用例,更符合实际工作需求,更省心省力。

下面是配套资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!å¨è¿éæå¥å¾çæè¿°

最后: 可以在公众号:程序员小濠 ! 免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等。

如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!喜欢软件测试的小伙伴们,可以加入我们的测试技术交流扣扣群:779450660里面有各种软件测试资源和技术讨论)

你可能感兴趣的:(技术分享,软件测试,intellij-idea,测试用例,软件测试,测试工程师,测试类型)