乐闻世界logo
搜索文章和话题

TestNG中测试方法的默认优先级是什么?

1 个月前提问
1 个月前修改
浏览次数10

1个答案

1

在TestNG中,测试方法的默认执行顺序是基于方法名的字母顺序。这意味着如果没有明确指定优先级或依赖关系,TestNG将按照方法名从A到Z的顺序执行这些测试方法。

例如,假设我们有以下三个测试方法:

java
@Test public void testB() { System.out.println("Running testB"); } @Test public void testA() { System.out.println("Running testA"); } @Test public void testC() { System.out.println("Running testC"); }

在上述情况下,即使testB()在代码中先出现,testA()会首先被执行,因为其方法名在字母排序中位于最前。执行顺序将会是testA(), testB(), testC()

如果需要控制测试方法的执行顺序,可以使用priority属性来明确指定:

java
@Test(priority = 2) public void testB() { System.out.println("Running testB"); } @Test(priority = 1) public void testA() { System.out.println("Running testA"); } @Test(priority = 3) public void testC() { System.out.println("Running testC"); }

这样设置之后,TestNG将会按照指定的优先级执行这些方法,即先testA(), 然后testB(), 最后testC()

2024年8月14日 00:17 回复

你的答案