首页 > 其他分享 >【单元测试】Junit 4(六)--junit4测试优先级顺序

【单元测试】Junit 4(六)--junit4测试优先级顺序

时间:2023-03-19 21:36:03浏览次数:36  
标签:MethodSorters 顺序 -- 单元测试 FixMethodOrder 测试 org junit4 junit

​ @FixMethodOrder的顺序也并不一定是方法在代码中定义的顺序,这与JVM的实现有关。

​ 我们在写JUnit测试用例时,有时候需要按照定义顺序执行我们的单元测试方法,比如如在测试数据库相关的用例时候要按照测试插入、查询、删除的顺序测试。如果不按照这个顺序测试可能会出现问题,比如删除方法在前面执行,后面的方法就都不能通过测试,因为数据已经被清空了。而JUnit测试时默认的顺序是随机的。所以这时就需要有办法要求JUnit在执行测试方法时按照我们指定的顺序来执行。

JUnit是通过@FixMethodOrder注解(annotation)来控制测试方法的执行顺序的。@FixMethodOrder注解的参数是org.junit.runners.MethodSorters对象,在枚举类org.junit.runners.MethodSorters中定义了如下三种顺序类型:

  • MethodSorters.JVM(按照JVM得到的方法顺序,也就是代码中定义的方法顺序)
  • MethodSorters.DEFAULT(默认的顺序)
  • MethodSorters.NAME_ASCENDING(按方法名字母顺序执行)

举例

import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;

@FixMethodOrder(MethodSorters.DEFAULT)
public class TestMethodOrder {

    @Test
    public void testA() {
        System.out.println("first");
    }
    @Test
    public void testB() {
        System.out.println("second");
    }
    @Test
    public void testC() {
        System.out.println("third");
    }
}

我们来一一测试一下:

首先是DEFAULT:

img

然后是JVM:

img

最后是NAME_ASCENDING:

img

以上就是这节的全部内容,如有错误,还请各位指正!

标签:MethodSorters,顺序,--,单元测试,FixMethodOrder,测试,org,junit4,junit
From: https://www.cnblogs.com/hmy71/p/junit_6.html

相关文章

  • 67.Mysql的组复制
    Mysql的组复制(groupcommit)AnInnoDBoptimizationthatperformssomelow-levelI/Ooperations(logwrite)onceforasetofcommitoperations, rathertha......
  • linux释放内存空间
    释放内存前先使用sync命令做同步,以确保文件系统的完整性,将所有未写的系统缓冲区写到磁盘中,包含已修改的i-node、已延迟的块I/O和读写映射文件。否则在释放缓存的过程中,可......
  • Linux释放SWAP空间
    swap的概述swap的作用可简单描述为:当内存不够用时,将存储器中的数据块从DRAM移到swap的磁盘空间中,以释放更多的空间给当前进程使用。当再次需要那些数据时,就可以将swap磁盘中......
  • 使用keydb 简化redis openresty 集成
    openresty支持redis的链接管理以及api集成能力是一个很不错的功能,基于keydb的多活模式可以简化redis的维护同时结合haproxy可以解决负载的问题参考玩法  ......
  • 图像处理之Canny边缘检测
    ​​​​1概述本节中,我们将一起学习OpenCV中边缘检测的各种算子和滤波器Canny算子、Sobel算子、Laplacian算子以及Scharr滤波器。2边缘检测的一般步骤在具体介绍之前,先来......
  • 片段
    ......
  • STM32+ESP8ESP8266+SoftAP一键配网接入物联网平台
       Wi-Fi配网,指由外部向Wi-Fi设备提供SSID和密码(PSW),让Wi-Fi设备可以连接指定的热点或路由器,并加入后者所建立的Wi-Fi网络。   对于具备丰富人机界面包......
  • 2023/3/19 考试总结
    时间安排8.30~9.00T1一眼乱搞,写了一个随机旋转之后取相邻的点,然后发现过不去1e6.9.00~9.40想了个类平面最近点对的分治做法,大样例跑的起飞。9.40~11.20想了很久T2,还......
  • 初始指针
    指针是什么?在计算机科学中,指针(pointer)编程语言的一个对象,利用地址,它的值直接指向存在电脑存储器中另一个地方的值。由于通过地址能找到所需的变量单元,可以说,地址指向该变量......
  • 嵌入式硬件电路设计的基本技巧
        不光是代码有可读性的说法,原理图也有。很多时候原理图不仅仅是给自己看的,也会给其它人看,如果可读性差,会带来一系列沟通问题。所以,要养成良好习惯,做个规范的原理图。......