写点什么

在 Idea 中使用 JUnit 单元测试

用户头像
jiangling500
关注
发布于: 2020 年 11 月 06 日

Idea 中的项目、模块、包以及类定义如下所示:

Calculator类定义如下:

package cn.infoq.xie.junit;
public class Calculator {
public int add(int a, int b) { return a + b; }
public int minus(int a, int b) { return a - b; }}
复制代码

CalculatorTest类定义如下:

package cn.infoq.xie.test;
import cn.infoq.xie.junit.Calculator;
public class CalculatorTest {
public void testAdd() { Calculator cal = new Calculator(); int result = cal.add(1, 1); System.out.println(result); }}
复制代码

这时testAdd()测试方法是无法独立运行的,我们在testAdd()方法上加上注解@Test,就会出现一个红色灯泡,单击它:

选择 Add 'JUnit4' to classpath

单击 OK

这时候红色灯泡就消失了,在行号的右侧出现了一个绿色三角形图标:

单击那个绿色三角形图标,选择 Run 'testAdd()' ,即可执行testAdd()方法:

在上述testAdd()方法中,我们是将result结果打印出来了,其实我们可以使用断言来测试期望结果:

package cn.infoq.xie.test;
import cn.infoq.xie.junit.Calculator;import org.junit.Assert;import org.junit.Test;
public class CalculatorTest {
@Test public void testAdd() { Calculator cal = new Calculator(); int result = cal.add(1, 1); Assert.assertEquals(2, result); // 原本为System.out.println(result); }}
复制代码

我们看一下测试通过的输出:

我们再把Assert.assertEquals(2, result);改为Assert.assertEquals(3, result);,看一下测试不通过的输出:





发布于: 2020 年 11 月 06 日阅读数: 94
用户头像

jiangling500

关注

万丈高楼平地起,勿在浮沙筑高台! 2019.12.17 加入

一名IT从业者,熟悉Linux下C/C++,了解MySQL、Java等。

评论

发布
暂无评论
在Idea中使用JUnit单元测试