Junit 4.11里增长了指定测试方法执行顺序的特性:
测试类的执行顺序可经过对测试类添加注解 “@FixMethodOrder(value)” 来指定,其中value 为执行顺序;
三种执行顺序可供选择:
- 默认(MethodSorters.DEFAULT)
- 按方法名(MethodSorters.NAME_ASCENDING)
- JVM(MethodSorters.JVM)
当没有指定任何顺序时,按默认来执行;
详细说明
MethodSorters.DEFAULT
默认顺序由方法名hashcode值来决定,若是hash值大小一致,则按名字的字典顺序肯定
MethodSorters.NAME_ASCENDING (推荐)
按方法名称的进行排序,因为是按字符的字典顺序,因此以这种方式指定执行顺序会始终保持一致;
MethodSorters.JVM
按JVM返回的方法名的顺序执行,此种方式下测试方法的执行顺序是不可预测的,即每次运行的顺序可能都不同(JDK7里尤为如此)
复制代码