【单元测试与JUnit 4】传统main方法测试代码太麻烦?来试试JUnit4

前言

众所周知我们再写程序的时候,是离不开测试调式这一步骤的。没有哪个程序员能保证自己从来不犯错。

我们一般是在写一段代码之后就立即进行测试,以防止出错之后由于涉及到代码太多而找不到是哪一段代码出错了。那么我们就需要进行单元测试。

单元测试

单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个类,图形化的软件中可以指一个窗口或一个菜单等。

进行简单的总结:

(1)单元测试是指对软件中最小可测试单元进行检查验证;
(2)测试用例是指编写一段代码已有功能(方法)进行校验;

一般来说在Java中我们进行单元测试是编写main方法然后在main方法中对需要调用的对象进行创建,然后对其方法进行调用。

在小工程中这个方法勉勉强强可以凑合,但是如果工程比较庞大那就显得比较繁琐了。

不用怕为了方便我们开发,编程大佬们就想到了封装一系列的单元测试工具,供我们使用。

JUnit 4就是Java中最著名的单元测试工具,主流IDE都内置了支持

JUnit 4

Junit 4使用方法:

(1)引入JUnit jar包或者增加Maven依赖
(2)编写测试用例验证目标方法是否则正确运行
(3)在测试用例上添加@Test注解开始单元测试

演示:

因为我们现在开发几乎都是创建Maven工程进行的开发,那么我们直接创建一个Maven工程进行演示。

这是一个maven工程的基本目录。
在这里插入图片描述
首先我们pom.xml中引入maven依赖。

<dependencies>
	<dependency>
		<groupId>junit</groupId>
		<artifactId>junit</artifactId>
		<version>4.12</version>
		<scope>test</scope>
	</dependency>
</dependencies>

在src/main/java目录下编写一个简单的需要测试的用例
在这里插入图片描述

public class Calculator {
    public int add(int a, int b) {
        return a + b;
    }
    public int subtract(int a, int b) {
        return a - b;
    }
}

在src/test/java目录下创建一个测试类编写测试用例验证目标方法是否则正确运行,并在测试用例上添加@Test注解开始单元测试。

public class CalculatorTest {
    private Calculator cal = new Calculator();
    //1.与原方法保持一致
    //2.在原方法前增加test前缀
    @Test
    public void testAdd() {
        int result = cal.add(1, 2);
        System.out.println(result);
    }
    @Test
    public void testSubtract() {
        int result = cal.subtract(1, 2);
        System.out.println(result);
    }
}

我们这里编写两个测试用例
在这里插入图片描述
在左边分别有绿色小三角形,我们可以分别对这些方法进行运行。如果是整个测试类的绿色小三角形那就是运行所有的测试方法。

运行结果:
在这里插入图片描述

结语

JUnit 4的使用就是这么简单,实用性也是非常强的。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

abcccccccccccccccode

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值