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,就会发现,没有被测试覆盖到的代码都将高亮显示为红色。覆盖的代码颜色则是绿色。如果一些代码是只覆盖部分,那没将显示为黄色。
更多建议: