单元测试工具——JUnit的使用

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

junit单元测试 csdn,软件测试,junit,单元测试,java

⭐️前言⭐️

本篇文章主要介绍单元测试工具JUnit的使用。

🍉欢迎点赞 👍 收藏留言评论 📝私信必回哟😁

🍉博主将持续更新学习记录收获,友友们有任何问题可以在评论区留言

🍉博客中涉及源码及博主日常练习代码均已上传GitHub


junit单元测试 csdn,软件测试,junit,单元测试,java

🍅1.注解

JUnit提供了非常强大的注解功能,通过@Test注解修饰到方法上,该方法就变为了一个测试方法,执行当前类时,会自动的执行该类下所有带@Test注解的用例。

在使用这些JUnit提供的注解时,需要现在pom.xml文件中进行配置:

		<dependency>
            <groupId>org.junit.jupiter</groupId>
            <artifactId>junit-jupiter</artifactId>
            <version>5.8.2</version>
            <scope>test</scope>
        </dependency>

@Test示例:
junit单元测试 csdn,软件测试,junit,单元测试,java

除了@Test注解外,还有以下常用注解:

  • @BeforeEach:当前的方法需要在每个用例执行之前都执行一次
  • @BeforeAll:当前的方法需要在当前类下所有用例执行之前执行一次,且被该注解修饰的方法必须为静态方法
  • @AfterEach:当前的方法需要在每个用例执行之后都执行一次
  • @AfterAll:当前的方法需要在当前类下所有用例执行之后执行一次,且被该注解修饰的方法必须为静态方法

🍅2.断言

检查测试方法的期望结果值真实返回值,通过Assertions类实现。

  • 断言匹配/不匹配:assertEquals()assertNotEquals()
  • 断言结果为真/为假:assertTrue()assertFalse()
  • 断言结果为空/非空:assertNull()assertNotNull()
@Test
    void a() {
        Assertions.assertTrue(1==1);
    }

🍅3.用例的执行顺序

如下图所示,测试用例的执行并不会按照我们编写代码的顺序来执行
junit单元测试 csdn,软件测试,junit,单元测试,java
如果在实际测试中,我们需要完成连贯的多个步骤的测试,是需要规定测试用例执行的顺序的,可以通过@order注解来实现排序:

  • 先使用注解说明当前类下所有的用例需要使用@Order注解来进行排序(注意:该注解必须要用在类上)
  • 然后通过@Order来指定用例的具体顺序
    junit单元测试 csdn,软件测试,junit,单元测试,java

🍅4.参数化

参数化就是尽可能的通过一个用例,多组参数来模拟用户的行为
在使用参数化注解之前需要先用@ParameterizedTest声明该方法为参数化方法,然后再通过注解提供数据来源。

单参数:
@ValueSource(数据类型方法={参数1,参数2…})
junit单元测试 csdn,软件测试,junit,单元测试,java
多参数:
1.从注解中手动编写数据源
@CsvSource({“数据组合1”,“数据组合2”…}),每个双引号是一组参数(测试用例)
junit单元测试 csdn,软件测试,junit,单元测试,java
2.从第三方csv文件读取数据源
如果测试用例较多时,在注解处手动编写数据源就有些不方便,我们这时就可以借助第三方csv文件来读取数据源
junit单元测试 csdn,软件测试,junit,单元测试,java

junit单元测试 csdn,软件测试,junit,单元测试,java
动态参数:

 // 通过动态方法来提供数据源
    @ParameterizedTest
    @MethodSource("methodParams")
    void dynamicParamsTest(String name,int age) {
        System.out.println("name:"+name+",age:"+age);
    }

    static Stream<Arguments> methodParams() throws InterruptedException {
        // 构造动态参数
        String[] arr=new String[4];
        for (int i=0;i< arr.length;i++) {
            Thread.sleep(500);
            arr[i]=System.currentTimeMillis()+"";
        }
        return Stream.of(
                Arguments.arguments(arr[0],20),
                Arguments.arguments(arr[1],19),
                Arguments.arguments(arr[2],18),
                Arguments.arguments(arr[3],17)
        );
    }

junit单元测试 csdn,软件测试,junit,单元测试,java
注意:当我们不指定数据源方法名时,会自动的找跟用例方法名同名的静态方法

🍅5.测试套件

当我们一个类中有多个测试用例时,我们不可能挨个去运行,那样将会很耗费时间,这时我们就需要测试套件来指定类或者指定包名来运行类下或者包下的所有测试用例。

如果要使用测试套件,首先我们需要先创建一个类,通过@Suite注解标识该类为测试套件类(而不是测试类)
junit单元测试 csdn,软件测试,junit,单元测试,java
然后指定类或者包来运行其下的所有测试用例
指定类来运行用例:
junit单元测试 csdn,软件测试,junit,单元测试,java
指定包名来运行包下所有的用例:
如果使用包名来指定运行的范围,那么该包下的测试类的命名需要以Test/Tests结尾(T必须大写)
junit单元测试 csdn,软件测试,junit,单元测试,java


⭐️最后的话⭐️
总结不易,希望uu们不要吝啬你们的👍哟(^U^)ノ~YO!!如有问题,欢迎评论区批评指正😁

junit单元测试 csdn,软件测试,junit,单元测试,java文章来源地址https://www.toymoban.com/news/detail-784395.html

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

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

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

相关文章

  • 软件测试--应用JUnit进行单元测试

    JUnit是一个开源的Java编程语言的单元测试框架,最初由 Erich Gamma 和 Kent Beck 编写。Junit测试是一种白盒测试工具。JUnit是一套框架,继承TestCase类,就可以用Junit进行自动测试了。具有JUnit经验对于应用“测试驱动开发(TDD)”的程序开发模型是非常重要的。 JUnit本质上是一套框

    2023年04月12日
    浏览(42)
  • 软件测试技术实验一 JUnit 单元测试的环境搭建

    1、确安装并配置 IntelliJ IDEA开发环境 2、安装插件Junit4.x,进行测试环境搭建 3、根据给定的源代码,编写测试代码,并运行成功。 1、调试指导书给定的目标源代码,除掉明显的语法错误,记录正确无误的被测程序代码。被测程序 : (1) Account.Java (2)Tc_Account.java (3)由插

    2024年04月28日
    浏览(44)
  • 软件质量保证与测试技术实验报告(四)——JUnit单元测试

    1.实验名称——JUnit单元测试 2.实验目的 (1)利用Junit进行单元测试,理解单元测试的任务、同时理解这类测试工具的实现原理; (2)理解断言的基本概念和断言测试方法; 3.实验内容 题目1:完成课件中Score_List的单元测试。 题目2:这是一个简单的计算器类——Computer,能

    2023年04月23日
    浏览(51)
  • Tessy—嵌入式软件单元测试/集成测试工具

    产品概述 Tessy源自戴姆勒—奔驰公司的软件技术实验室,由德国Hitex公司负责销售及技术的支持服务,是一款专门针对嵌入式软件进行单元/集成测试的工具。它可以对C/C++代码进行单元、集成测试,可以自动化搭建测试环境、执行测试、评估测试结果并生成测试报告,其多样

    2024年01月18日
    浏览(56)
  • Tessy — 嵌入式软件单元测试/ 集成测试工具学习

    Tessy — 嵌入式软件单元测试/ 集成测试工具 本文章向大家介绍Tessy — 嵌入式软件单元测试/ 集成测试工具,主要包括Tessy — 嵌入式软件单元测试/ 集成测试工具使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。 Tessy 源

    2024年02月04日
    浏览(68)
  • 使用JUnit单元测试

    前提:   测试题目: 根据输入的年份和月份判断月份的天数。若月份不在有效范围之内,应提示:“月份输入不正确。”。月份不为2月,根据输入月份输出对应的月份天数。月份为2月,根据年份判断如为普通闰年,输出2月份正确天数;如为世纪闰年,输出2月份正确天数;

    2024年02月04日
    浏览(34)
  • Java中的JUnit是什么?如何使用JUnit进行单元测试

    JUnit是Java中最流行的单元测试框架之一。它可以帮助开发人员在代码编写过程中检测出错误和异常,从而提高代码的质量和可靠性。 JUnit是一个由Kent Beck和Erich Gamma创建的开源Java单元测试框架,它已经成为Java开发中最常用的测试框架之一。这个框架的主要目的是为了简化单元

    2024年02月12日
    浏览(71)
  • 单元测试Junit使用与详解

    一、什么是单元测试 在平时的开发当中,一个项目往往包含了大量的方法,可能有成千上万个。如何去保证这些方法产生的结果是我们想要的呢?当然了,最容易想到的一个方式,就是我们通过System.out来输出我们的结果,看看是不是满足我们的需求,但是项目中这些成千上

    2024年02月02日
    浏览(45)
  • Junit4单元测试的使用

    导入Junit4依赖 要使用单元测试,首先我们得在项目中导入Junit4的jar包。 普通导入方式 ,在项目目录下创建一个lib文件夹,然后将Junit4的jar复制进来,然后右键点击Add as Library 将jar设为依赖。 在这里插入图片描述 Maven项目导入方式 ,在maven的配置文件pom.xml直接添加依赖坐标

    2024年02月13日
    浏览(45)
  • 【单元测试】如何使用 JUnit5 框架?

      Junit5是一个用于在Java平台上进行单元测试的框架。JUnit 5 框架主要由三部分组成:JUnit Platform、JUnit Jupiter 和 JUnit Vintage。 JUnit Platform:定义了测试引擎的 API,是 JVM 上用于启动测试框架的基础服务,支持通过 IDE、构建工具、命令行等方式运行单元测试。 JUnit Jupiter:包含

    2024年04月10日
    浏览(46)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包