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

当需要按照特定顺序执行JUnit测试用例时,可以使用@FixMethodOrder注解配合MethodSorters枚举来设定顺序,如MethodSorters.JVM(代码定义顺序)、MethodSorters.DEFAULT(默认随机顺序)和MethodSorters.NAME_ASCENDING(按方法名升序)。文章通过示例解释了如何使用这些选项并提供了完整教程链接。

​ @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(按方法名字母顺序执行)

举例

highlighter- Java
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:

在这里插入图片描述

然后是JVM:

在这里插入图片描述

最后是NAME_ASCENDING:

在这里插入图片描述

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

最后: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋友们如果需要可以自行免费领取 【保证100%免费】
在这里插入图片描述

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!
在这里插入图片描述

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值