JUnit

单元测试

测试是软件开发过程中极其重要的一环,详尽周密的测试能够减少软件BUG,提高软件品质。

单元测试是指针对软件功能单元所作的测试,这里的功能单元可以是一个类的属性或者方法,测试的目的是看这些基本单元是否工作正常。

单元测试的内容很基础,因此可以看作是测试工作的第一环,该项工作一般由开发人员自行完成。如果条件允许,单元测试代码的开发应与程序代码的开发同步进行。

使用JUnit的过程,主要是测试Java类里的方法。而单元测试在JUnit里面就是测试某个类其中的一个方法。

JUnit功能

1、可以再Eclipse工具中使用,和被测试代码分开存放,便于区分和管理。当测试结束,可以方便的删除测试代码,不会影响被测代码结构。

2、利用JUnit你可以将设计好的测试用例转化为测试代码。针对被测代码的一个方法,你可以写一个测试方法,也可以写多个测试方法。

3、当你测试一个方法时候,需要做一些前置操作时候,可以在准备方法里完成。

4、当在测试结束时需要收尾操作时候,可以在结束方法里完成。

5、JUnit测试是有生命周期的,JUnit运行器将按顺序依次执行准备方法、测试方法和结束方法

6、同时还支持时间性能测试、异常测试、多个类的打包测试等功能,基本可以满足单元测试的所有需求。

Junit的下载和安装

网址为:https://junit.org/junit4/

1、点击Download and install 即可

 

2、点击下载划红线部分即可

在后面使用junit的时候我们会将这两个jar包加入到Java工程文件中,当加入成功奇偶,我们在项目里面就可以使用junit测试代码啦。

测试方法

从JUnit历史上有2种惯用的单元测试方法。JUnit3采用TestCase的方式进行单元测试,而Junit4则引入Java5的注解(annnotation)特性使测试变得更加简单。

Eclipse对这两种测试方法都支持,我们将分别对这两种方式进行介绍。

1、TestCase使用

import  junit . framework.TestCase;

public class DaterTest extends TestCASE{

    @override

    public void setUp() {

//在测试代码之前执行

}

public void testIsLeapYear()  {

//测试代码

}

@override

    public void tearDown () {

//在测试代码之后执行

}

}

实现步骤:首先创建建一个测试类并继承TestCase类,然后复写setUp()和tearDown()方法,最后编写测试方法。

setUp():该方法在每个测试方法执行之前都要执行一次,只能有一个。

tearDown():该方法在每个测试方法执行之后要执行一次,只能有一个。

他们必须是public void 类型,不能有参数,方法名不能改变。

测试方法testXxx():

必须是public void 类型,不能有参数,方法名必须以test开头。

2、Annotation使用

import org. junit . After;

import org. junit . Before;

import org. junit .Test;

public class DaterTest {

         @Before // 在测试代码之前执行

         public void start () {

           }

        @Test

       public void testIsLeapYear() {

                 //测试代码

       }

      @After // 在测试代码之后执行

   public void finish () {

   }

}

实现步骤:首先创建一个测试类,然后写@Before和@After的方法,最后编写测试方法。

@Before:该方法在每个测试方法执行之前都要执行一次,只能有一个。

@After:该方法在每个测试执行之后要执行一次,只能有一个。

他们必须是public void 类型,不能有参数,方法名不强制要求。

测试方法@Test:

必须是public void 类型,不能有参数,方法名不强制要求。

3、断言

JUnit为我们提供了一些铺筑函数,他们用来帮助我们确定被测试的方法是否按照预期的效果正常工作,通常,把这些铺筑函数称为断言。

例如:public oid test () {

                result = fun () ;

               assertEquals (expected ,result)

}

result为被测方法fun()返回的实际结果,

expect为期望的结果

assertEquals作为断言来判断两者是否相同

JNuit的使用

 

 

 

 

 

 

 

目前都理论,本人都是在学习当中

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值