解决idea自带单元测试方法覆盖率达不到百分之百

发表于:2021-12-09 09:31

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:骑电动车的小黄    来源:稀土掘金

分享:
  前言
  公司现在要求写单元测试并且方法的覆盖率要达到百分之百。
  曾经写单元测试一般就是在工程目录test文件中写接口的单元测试能测通就行了,但是现在需要统计覆盖率,idea自带的有测试覆盖率的插件,就在idea启动项里面。
  问题
  本来service中只有五个公共方法,三个私有方法,并且在都写了测试用例,而且全部都跑通了,跑没跑到方法可以通过代码左边的颜色提示进行区分,默认红色是没有跑过的代码,绿色是已经跑过的代码。
  我在idea自带的统计页面中查看,发现确实有八个方法覆盖到了,但是这个类一共有九个方法,然后我数了好几遍都没有搞明白。
  然后找到另外一个统计覆盖率的工具jacoco,使用jacoco重新统计了一下,通过提供的ui页面终于找到了问题所在。
  jacoco这里可以很明显看到除了我文件中的八个方法还统计了一个构造函数。
  解决办法
  现在假设我用idea自带的统计覆盖率工具统计的时候把无参构造函数统计进去了,但是我没有写无参构造函数的测试用例,所以才会出现明明只有八个方法,统计的时候会有九个方法的原因。
  那么是不是可以修改idea检测代码覆盖率的工具为jacoco就可以解决这个问题了。
  修改idea检测代码覆盖率工具
  修改步骤:run -> Edit Configurations

  测试是否成功
  ok,成功在统计代码覆盖率忽略掉无参的构造函数。

  本文内容不用于商业目的,如涉及知识产权问题,请权利人联系51Testing小编(021-64471599-8017),我们将立即处理
价值398元的测试课程免费赠送,填问卷领取吧!

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计

法律顾问:上海漕溪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2022
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号