Junit 5从一些类中使用@标记进行顺序测试

mcvgt66p  于 2022-11-11  发布在  其他
关注(0)|答案(2)|浏览(143)

我有一些课。我所有的课,我有一些测试。例如:

public class testpage1(){

@test
@Tag("Regression")
void test1(){
   system.out.println("Test1");
}

void test2(){
   system.out.println("Test2");
}

   }

public class testpage2(){

@test
@Tag("Regression")
void test3(){
   system.out.println("Test3");
 }

void test4(){
   system.out.println("Test4");
   }

}

public class testpage3(){

@test
@Tag("Regression")
void test5(){
   system.out.println("Test5");
   }

void test6(){
   system.out.println("Test6");
  }

}

我还有其他课要上:

@RunWith(value = JunitPlatform.class)
@IncludeTags(value = {"Regression"})

当我运行这个类的时候,测试运行没有任何顺序,
如何按所需的顺序运行测试?

blpfk2vs

blpfk2vs1#

在Junit中,测试方法通常会按照它们的名字的顺序执行,并以升序排序。
或者您可以使用注解@Order @Order(1)@Order(2)...来指定顺序。

qnzebej0

qnzebej02#

jUnit5允许您使用@Order()注解设置测试执行顺序。
因此,您可以在程式码中加入这些注解,如下所示:

public class testpage1(){

@test
@Order(1)
@Tag("Regression")
void test1(){
   system.out.println("Test1");
}

void test2(){
   system.out.println("Test2");
}

   }

public class testpage2(){

@test
@Order(2)
@Tag("Regression")
void test3(){
   system.out.println("Test3");
 }

void test4(){
   system.out.println("Test4");
   }

}

public class testpage3(){

@test
@Order(3)
@Tag("Regression")
void test5(){
   system.out.println("Test5");
   }

void test6(){
   system.out.println("Test6");
  }

}

这将使这些测试相应地执行

相关问题