• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

JavaJunit使用

武飞扬头像
图南14
帮助1

Junit基础操作

  • JUnit是专⻔做单元测试的组件。
    • 在实际开发中,单元测试⼀般是由我们Java程序员来完成的。
    • 我们要对我们⾃⼰写的每⼀个业务⽅法负责任,要保证每个业务⽅法在进⾏测试的时候都能通过。
    • 测试的过程中涉及到两个概念:
      • 期望值
      • 实际值
    • 期望值和实际值相同表示测试通过,期望值和实际值不同则单元测试执⾏时会报错。
  • 使⽤JUnit步骤:
    • 第⼀步:在pom引⼊依赖
<!-- junit依赖 -->
<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.13.2</version>
    <scope>test</scope>
</dependency>
  • 第⼆步:编写单元测试类【测试⽤例】,测试⽤例中每⼀个测试⽅法上使⽤@Test注解进⾏标注
  • 测试用例的名字以及每个测试方法的定义都是有规范的:
    • 测试用例的名字:XxxTest
    • 测试方法声明格式:public void test业务方法名(){}
// 测试⽤例
public class CarMapperTest{
    
    // 测试⽅法
    @Test
    public void testInsert(){}
    
    @Test
    public void testUpdate(){}
    
}
  • 第三步:可以在类上执⾏,也可以在⽅法上执⾏
    • 在类上执⾏时,该类中所有的测试⽅法都会执⾏。
    • 在⽅法上执⾏时,只执⾏当前的测试⽅法。
package com.powernode.junit.service;

import org.junit.Assert;
import org.junit.Test;

/**
 * 单元测试类
 * @author 动力节点
 * @version 1.0
 * @since 1.0
 */
public class MathServiceTest { // 名字规范:你要测试的类名 Test

    // 单元测试方法写多少个。
    // 一般是一个业务方法对应一个测试方式。
    // 测试方法的规范: public void testXxxx(){}
    // 测试方法的方法名:以test开始。假设测试的方法是sum,这个测试方法名:testSum
    // @Test注解非常重要,被这个注解标注的方法就是一个单元测试方法。
    @Test
    public void testSum(){
        // 单元测试中有两个重要的概念:
        // 一个是:实际值(被测试的业务方法的真正执行结果)
        // 一个是:期望值(执行了这个业务方法之后,你期望的执行结果是多少)
        MathService mathService = new MathService();
        // 获取实际值
        int actual = mathService.sum(1, 2);
        // 期望值
        //int expected = 3;
        int expected = 30;
        // 加断言进行测试
        Assert.assertEquals(expected, actual);
    }

    @Test
    public void testSub(){
        MathService mathService = new MathService();
        // 实际值
        int actual = mathService.sub(10, 5);
        // 期望值
        int expected = 5;
        // 添加断言机制
        Assert.assertEquals(expected, actual);
    }

}
学新通

添加了断言机制之后,若期望值与实际值不同则会抛出异常。
![image.png](https://img-blog.csdnimg.cn/img_convert/6b8850a1590fdbdfac496f720190dcbc.png#clientId=uaf58b254-f545-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=635&id=ufb8b0bc8&margin=[object Object]&name=image.png&originHeight=635&originWidth=710&originalType=binary&ratio=1&rotation=0&showTitle=false&size=66631&status=done&style=none&taskId=u2a65c603-c54d-49e1-b91f-63b1cb1b0f1&title=&width=710)

知识扩展:断言Assert

断言的概念

  • 断言实际上是一种测试机制,它可以规定某个参数或者属性必须要满足某个条件,否则会抛出一个异常,并且程序会中止。

断言的一些特点

  • 断言只用于开发测试阶段确定程序的内部错误
  • 断言默认是禁用的,需要手动开启。禁用断言的情况下,类加载器会跳过断言代码
  • 断言检测失败的时候,会抛出AssertionError异常,程序中止

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgcajcf
系列文章
更多 icon
同类精品
更多 icon
继续加载