单元测试——了解 junit

目录

前言:

1.什么是单元测试

2.什么是 junit

2.1 JUnit ——是一个开发源代码的 Java 测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系 xUnit 的一个实例(用于 java 语言)。主要用于白盒测试,回归测试。

2.2 JUnit 有很多功能可以简化测试的编写与运行。

3.从代码上体验

3.1 一个简单的测试程序是怎样的?

3.2 用 JUnit 编写的话

3.3 JUNIT 3.X 使用

注:

4.小结


前言:

单元测试是一种软件开发中的测试方法,用于验证代码中的最小可测试单元,通常是函数或方法。Junit 是一个流行的 Java 单元测试框架,它可以帮助开发人员编写和运行单元测试,并提供反馈以验证代码的正确性。

1.什么是单元测试

单元测试——是最小粒度的测试,以测试某个功能或代码块。一般由程序员来做,因为它需要知道内部程序设计和编码的细节。

2.什么是 junit

2.1 JUnit ——是一个开发源代码的 Java 测试框架,用于编写和运行可重复的测试。他是用于单元测试框架体系 xUnit 的一个实例(用于 java 语言)。主要用于白盒测试,回归测试。
2.2 JUnit 有很多功能可以简化测试的编写与运行。

(1)单独的 classloader 来运行每个单元测试以避免副作用。
(2)JUnit annotations 注释提供很多资源初始化和回收的方法:
(3)各种各样的 assert 方法使它容易检查你的测试结果。
(4)与流行的工具,如 ant、Maven、及流行 IDEs 如:ecplise,NetBeans,JBuilder 整合。

3.从代码上体验

calculator 类

public class Calculator {
     public double add(double number1, double number2) { 
        return number1 + number2; 
    } 
} 
3.1 一个简单的测试程序是怎样的?
public class CalculatorTest {
    public static void main(String[] args) {
        Calculator calculator = new Calculator();
        double result = calculator.add(10,50);
        if (result != 60) {
        System.out.println("Bad result: " + result);
            }
        }
}
3.2 用 JUnit 编写的话
import static org.junit.Assert.*;
import org.junit.Test;
public class CalculatorTest {  //先定义一个测试类。唯一的限制是类必须pulbic ,可以任何名字。这一点与JUnit3X有所不同。
@Test            //通过@Test这个annotation声明这是一个测试方法。一般方法的命名为testXXX的模式。

public void testAdd() {
      Calculator calculator = new Calculator();   //通过创建Calculator类的实例(被测试的对象)开始了测试工作 
double result = calculator.add(10, 50);       //通过调用测试方法并传递2个已知值来执行测试
      assertEquals(60, result, 0);      //利用JUnit框架,调用assertEquals方法检查测试结果.60表示期望值,result为相加的结果,0代表结果是相等且正确
        }
    }
3.3 JUNIT 3.X 使用

基本流程(我们一般都是这么写)
使用 junit 进行测试,一般可以总结为如下 4 个步骤:
1) 写测试类并继承 TestCase 类;
2) 写测试方法 testXXXX();
3) 写测试套件类将 test case 加入 test suite;
4) 运行 TestRunner 进行测试;
测试演示:

注:

4.小结

1)每个开发者都会执行某种类型的测试,以确保新写的代码能正常工作。使用自动单元测试的开发者能够根据需要重复执行这些测试,以确保代码在后面依然正常工作
2)手工编写单元测试并非难事,但是当测试变得更为复杂,编写和维护测试就变得比较困难了。
3)junit 是一个单元测试框架,使得创建、运行、维护单元测试变得简单。

  作为一位过来人也是希望大家少走一些弯路

在这里我给大家分享一些自动化测试前进之路的必须品,希望能对你带来帮助。

(软件测试相关资料,自动化测试相关资料,技术问题答疑等等)

相信能使你更好的进步!

点击下方小卡片

【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N6B9http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=OetrT9f88edRYNIQKFJOmrs6RHyWXP3y&authKey=bgPQfqmHo0NrA1BoVHRRETiUqnaJESQZRv5yxL9Ab4YfabTZAQ481HuPpZ6kA%2Ftd&noverify=0&group_code=574737577 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值