Junit单元测试(笔记)

这篇具有很好参考价值的文章主要介绍了Junit单元测试(笔记)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.Junit介绍

Junit是一个Java语言的单元测试框架,简单理解为可以用于取代java的(部分)main方法。Junit属于第三方工具,需要导入jar包后使用。

二.Junit的基本使用(重点)

a.在当前模块下创建lib文件夹
Junit单元测试(笔记)
b.把junit的jar包,拷贝到lib的文件夹中
Junit单元测试(笔记)
c.把jar包添加到图书馆中
Junit单元测试(笔记)
Junit单元测试(笔记)
Junit单元测试(笔记)

package com.itheima.demo01Junit;

import org.junit.Test;

/*
    junit的作用:可以单独的运行某一个方法(对方法进行测试)
    使用步骤
        1.导入junit的jar包
        2.在要运行的方法上边,添加一个@Test注解(需要导包)
        3.点击方法左边的绿色三角或者鼠标右键点击方法,选择Run 方法,运行方法
          点击类左边的绿色的三角或者鼠标右键点击类名,选择Run 类名,可以运行类中所有被@Test修饰的方法
          鼠标右键点击模块,选择'Run All Tests',可以运行模块中所有类里被@Test修饰的方法
 */
public class Demo01Junit {
    @Test
    public void show01(){
        System.out.println("show01方法");
    }

    @Test
    public void show02(){
        System.out.println("show02方法");
    }

    @Test
    public void show03(){
        System.out.println("show03方法");
    }
}

Junit单元测试(笔记)

三.Junit的注意事项

Junit单元测试(笔记)

package com.itheima.demo01Junit;

import org.junit.Test;

/*
    Junit的注意事项
        1.没有添加@Test注解的方法,不能使用Junit运行的
        2.Junit只能运行public修饰的,没有参数,没有返回值的非静态方法
 */
public class Demo02Junit {
    //1.没有添加@Test注解的方法,不能使用Junit运行的
    public void show01(){
        System.out.println("Demo02Junit show01方法");
    }

    //java.lang.Exception: Method show02() should be public 方法show02应该被public修饰
    //@Test
    private void show02(){
        System.out.println("Demo02Junit show02方法");
    }

    //java.lang.Exception: Method show03 should have no parameters 方法show03应该没有参数
    //@Test
    public void show03(int a){
        System.out.println("Demo02Junit show03方法"+a);
    }

    //java.lang.Exception: Method show04() should be void 方法show04应是void修饰
    //@Test
    public String show04(){
        System.out.println("Demo02Junit show04方法");
        return "hello";
    }

    //java.lang.Exception: Method show05() should not be static 方法show05应该没有static修饰
    //@Test
    public static void show05(){
        System.out.println("Demo02Junit show05方法");
    }

    //定义一个可以使用Junit运行的方法
    @Test
    public void method(){
        //调用哪些不能直接使用junit运行的方法
        show01();
        show02();
        show03(10);
        String s = show04();
        System.out.println(s);
        show05();
    }
}

四.Junit相关注解

Junit单元测试(笔记)

package com.itheima.demo01Junit;

import org.junit.*;

/*
    Junit相关的注解:
    @Test:
        用来修饰方法,该方法是单元测试的方法,可以单独运行方法
    @Before:在...前边
        用来修饰方法,该方法会在每一个测试方法执行之前[自动]执行一次。
    @After:在...后边
        用来修饰方法,该方法会在每一个测试方法执行之后[自动]执行一次
     @BeforeClass:
        用来静态修饰方法,该方法会在所有测试方法之前[自动]执行一次,而且只执行一次
     @AfterClass:
        用来静态修饰方法,该方法会在所有测试方法之后[自动]执行一次,而且只执行一次
     注意:
        1.@Before,@After,@BeforeClass,@AfterClass:这四个注解修饰的方法不能单独执行
        2.@Before,@After,@BeforeClass,@AfterClass:这四个注解修饰的方法会[自动]在@Test修饰方法前后运行
 */
public class Demo03Junit {
    @Test
    public void show01(){
        System.out.println("show01方法");
    }

    @Test
    public void show02(){
        System.out.println("show02方法");
    }

    @Test
    public void show03(){
        System.out.println("show03方法");
    }

    @Before
    public void before(){
        System.out.println("before方法");
    }

    @After
    public void after(){
        System.out.println("after方法");
    }

    @BeforeClass
    public static void beforeClass(){
        System.out.println("beforeClass方法");
    }

    @AfterClass
    public static void afterClass(){
        System.out.println("afterClass方法");
    }
}

执行的结果:

beforeClass方法
before方法
show03方法
after方法
before方法
show01方法
after方法
before方法
show02方法
after方法
afterClass方法

备注:

Junit常用注解(Junit5.x版本)文章来源地址https://www.toymoban.com/news/detail-426017.html

  • @BeforeEach:用来修饰方法,该方法会在每一个测试方法执行之前执行一次。
  • @AfterEach:用来修饰方法,该方法会在每一个测试方法执行之后执行一次。
  • @BeforeAll:用来静态修饰方法,该方法会在所有测试方法执行之前执行一次。
  • @AfterAll:用来静态修饰方法,该方法会在所有测试方法执行之后执行一次

五.断言(了解)

  • 作用
    预测判断某个条件一定成立, 如果条件不成立,则直接奔溃
  • 使用方式
    两个参数: 第一个代表预判值, 第二个代表实际结果
    如果预判正确就会绿色通过
    如果预判错误就会红色失败
    Assert.assertEquals(期望结果 , 实际结果);
package com.itheima.demo01Junit;

import org.junit.Assert;

/*
    作用
      预测判断某个条件一定成立,  如果条件不成立,则直接崩溃(抛异常)

    使用方式
        Assert.assertEquals(期望结果 , 实际结果);
        两个参数: 第一个代表预判值,  第二个代表实际结果
         如果预判正确就会绿色通过
         如果预判错误就会红色失败
 */
public class Demo04Junit {
    public static void main(String[] args) {
        //断言正确,无任何结果
        Assert.assertEquals(true,"helloworld".contains("hello"));

        /*
            AssertionError:断言异常
                expected:<true> 期望的是true
                but was:<false> 得到的实际结果是false
         */
        //Assert.assertEquals(true,"helloworld".contains("你好"));

        Assert.assertEquals(10,Integer.parseInt("10"));
        
        /*
            AssertionError: 断言异常
                expected:<10>期望的是10 
                but was:<11>得到的实际结果是11
         */
        Assert.assertEquals(10,Integer.parseInt("11"));
    }
}

到了这里,关于Junit单元测试(笔记)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在一个maven项目中使用maven命令进行junit单元测试

    如何在一个maven项目中使用maven命令进行junit单元测试? 首先确定一个maven项目的结构: 包含源代码目录src/main/java. 配置目录src/main/resources. 测试代码目录src/test. 目录结构可视化如下: 假定demo.java内容如下所示 我们要测试这个demo类, 可以在demoTest.java中写以下代码 然后就可以通过

    2023年04月21日
    浏览(55)
  • Day14:单元测试、Junit单元测试框架、反射、注解

    针对最小的功能单元(方法)进行正确性测试 编写正规的单元测试框架 传统的无法执行自动化测试,且无法得到测试报告 Junit的作用: 测试类取名:原类名+Test(大驼峰) 测试方法取名:test+原函数名称(小驼峰) 测试方法:必须public,无参,无返回值 测试方法上面必须加

    2024年04月14日
    浏览(63)
  • 软件测试实验:Junit单元测试

    目录 前言 实验目的 实验内容 实验要求 实验过程 题目一 题目一测试结果 题目二 题目二实验结果 总结 软件测试是软件开发过程中不可缺少的一个环节,它可以保证软件的质量和功能,发现并修复软件的缺陷和错误。软件测试分为多种类型,其中一种是单元测试,即对软件

    2024年02月02日
    浏览(51)
  • 单元测试 —— JUnit 5 参数化测试

    目录 设置 我们的第一个参数化测试 参数来源 @ValueSource @NullSource @EmptySource @MethodSource @CsvSource @CsvFileSource @EnumSource @ArgumentsSource 参数转换 参数聚合 奖励 总结 如果您正在阅读这篇文章,说明您已经熟悉了JUnit。让我为您概括一下JUnit——在软件开发中,我们开发人员编写的代

    2024年02月03日
    浏览(46)
  • 【单元测试】Junit 4(三)--Junit4断言

    ​ **断言(assertion)**是一种在程序中的一阶逻辑(如:一个结果为真或假的逻辑判断式),目的为了表示与验证软件开发者预期的结果——当程序执行到断言的位置时,对应的断言应该为真。若断言不为真时,程序会中止执行,并给出错误信息。 这里我们直接上例子 接下来我们

    2024年02月08日
    浏览(51)
  • 单元测试及其工具Junit

    单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确,通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。 单元测试是软件测试的一种类型,测试对象是最基础的代码单元(函数、类、模块),属

    2024年02月10日
    浏览(41)
  • JUnit单元测试之旅

    单元测试(Unit Testing)是对软件中的最小可测试单元进行检查和验证。它主要包括: 测试单元:软件中的最小可测试功能模块,如方法、类等。 测试用例:用于验证测试单元的输入、执行和输出是否正确的测试脚本。 测试套件:包含多个测试用例的集合。 JUnit是Java语言中最广泛使用

    2024年02月07日
    浏览(85)
  • 测开 (Junit 单元测试框架)

    目录 了解 Junit 引入相关依赖 1、Junit注解 @Test @BeforeEach、@BeforeAll @AfterEach @AfterAll 2、断言 1、Assertions - assertEquals 方法 2、Assertions - assertNotEquals 方法 3、Assertions - assertTrue assertFalse方法 4、Assertions - assertNull assertNotNull 小结 3、用例的执行顺序 - 方法排序( @Order 注解) 4、测试套

    2024年02月07日
    浏览(50)
  • 【Junit 单元测试】

    1.导入依赖

    2024年02月11日
    浏览(22)
  • 单元测试junit+mock

    单元测试(unit testing),是指对软件中的最小可测试单元进行检查和验证。至于“单元”的大小或范围,并没有一个明确的标准,“单元”可以是一个方法、类、功能模块或者子系统。 单元测试通常和白盒测试联系到一起 ,如果单从概念上来讲两者是有区别的,不过我们通

    2024年02月08日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包