Java开发工具IntelliJ IDEA单元测试和代码覆盖率图解

简介: 原文 http://www.cnblogs.com/xiongmaopanda/p/3314660.html Java开发工具IntelliJ IDEA使用教程:单元测试和代码覆盖率 本文将展示如何使用IntelliJ IDEA开发单元测试和分析覆盖率。

原文 http://www.cnblogs.com/xiongmaopanda/p/3314660.html

Java开发工具IntelliJ IDEA使用教程:单元测试和代码覆盖率

本文将展示如何使用IntelliJ IDEA开发单元测试和分析覆盖率。

1 创建新的项目

创建名为UnitTestingApp的Java项目。

2 创建一个类进行测试

创建一个新的类用于测试。

添加方法sayHello返回Hello字符串。

3 创建测试源根目录

为了不将测试添加到源中,用户可以创建根目录。在这种情况下测试将从产品代码中分离出来。

创建一个测试源根目录。

4 创建一个测试类

IntelliJ IDEA提供了一个快捷操作Cmd + Shift + T作为类和测试之间的导航。同时允许用户在那里创建一个测试类。

选择JUnit 4作为单元测试库。IntelliJ IDEA将提供到件这个库添加到模块中。选择生成setUp和sayHello的方法。

如果项目有几个源根目录,IDE将要求选择其中一个,用于放置新的测试类。

当测试类生成后,我们可以为我们的测试方法testSayHello添加代码。

5 运行测试

现在我们可以通过右键菜单在这个类上运行'MyClassTest'来进行测试,或通过Run → Edit Configurations来进行。

结果将在Run工具窗口进行显示。

6 编辑测试设置

我们可以通过Run → Edit Configurations或工具栏上的标签来调整我们的测试运行配置。

在Configuration选项卡,用户可以选择需要运行的测试。例如,您可以从一个类、程序包、测试套件或甚至模式中运行所有的测试。这里的Fork模式让用户在一个单独的进程运行每个测试。

在代码覆盖标签你可以调整覆盖率设置。目前IntelliJ IDEA支持两种测量覆盖率引擎。默认情况下它使用自己的引擎,当然用户也可以选择JaCoCo引擎。用户也可以在这里选择覆盖率模式。Tracing{span{ mode模式会增加消耗,但测量会更精确。

7 运行覆盖

收集覆盖率,用户需要通过Run → Run 'MyClassTest' with Coverage或工具栏上的选项运行特定模式的测试。

当覆盖模式运行至少一个测试之后,IDE将会在Project工具窗口显示每个程序包、类的覆盖率数据,同时在Coverage工具窗和编辑器中也会显示。

8 编辑器中的覆盖率

如果用户添加另一个方法到MyClass,并运行覆盖率测MyClass,就会发现,没有被测试覆盖到的代码都将高亮显示为红色。覆盖的代码颜色则是绿色。如果一些代码是只覆盖部分,那没将显示为黄色。

》》》IntelliJ IDEA最新版下载

目录
相关文章
|
2天前
|
Java 网络安全 网络协议
IDEA实现java远程调试
IDEA实现java远程调试
16 3
|
3天前
|
Java 测试技术 数据库
【JAVA基础篇教学】第十七篇:Java单元测试
【JAVA基础篇教学】第十七篇:Java单元测试
|
4天前
|
安全 Java 数据库连接
在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通
在IntelliJ IDEA中通过Spring Boot集成达梦数据库:从入门到精通
|
4天前
|
存储 IDE Java
IntelliJ IDEA 安装及配置详细教程
IntelliJ IDEA 安装及配置详细教程
18 0
|
13天前
Mac上IntelliJ IDEA设置类注释和方法注释带作者和日期
Mac上IntelliJ IDEA设置类注释和方法注释带作者和日期
|
13天前
|
Java
IDEA云行项目提示Error: java: OutOfMemoryError
IDEA云行项目提示Error: java: OutOfMemoryError
|
13天前
|
Java 微服务
IDEA报错There is insufficient memory for the Java Runtime Environment to continue.
IDEA报错There is insufficient memory for the Java Runtime Environment to continue.
|
13天前
|
XML SQL Java
IntelliJ IDEA 插件 MybatisX 在mapper和xml间跳转
IntelliJ IDEA 插件 MybatisX 在mapper和xml间跳转
|
13天前
|
Java
Intellij IDEA运行报Command line is too long的解决办法
Intellij IDEA运行报Command line is too long的解决办法
|
13天前
|
网络协议 安全 关系型数据库
IntelliJ IDEA如何使用固定地址公网远程访问本地Mysql数据库
IntelliJ IDEA如何使用固定地址公网远程访问本地Mysql数据库
22 1