在JUnit中,您可以使用@FixMethodOrder(MethodSorters.NAME_ASCENDING)
按字典名称的方法名称运行测试方法。
PS已通过JUnit 4.12测试
ExecutionOrderTest.java
package com.mkyong;
import org.junit.FixMethodOrder;
import org.junit.Test;
import org.junit.runners.MethodSorters;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
//Sorts by method name
@FixMethodOrder(MethodSorters.NAME_ASCENDING)
public class ExecutionOrderTest {
@Test
public void testB() {
assertThat(1 + 1, is(2));
}
@Test
public void test1() {
assertThat(1 + 1, is(2));
}
@Test
public void testA() {
assertThat(1 + 1, is(2));
}
@Test
public void test2() {
assertThat(1 + 1, is(2));
}
@Test
public void testC() {
assertThat(1 + 1, is(2));
}
}
输出,以上测试方法将按以下顺序运行:
test1 test2 testA testB testC
注意
JUnit仅提供方法名称作为执行顺序,并且我认为JUnit团队没有计划开发其他功能来支持测试执行顺序,因为单元测试应该以任意执行顺序运行。如果您确实需要测试执行顺序,请尝试使用TestNG依赖测试
参考文献
标签: junit
翻译自: https://mkyong.com/unittest/junit-run-test-in-a-particular-order/