testng 测试依赖关系

依赖关系
先给个例子

 

@Test
public void serverStartedOk() {}
 
@Test(dependsOnMethods = { "serverStartedOk" })
public void method1() {}
  

在这个例子中,method1()必须在serverStartedOk()执行后才能执行,而且serverStartedOk()不能fail,否则method1()会被skip掉

基本上类似于ant的依赖关系,也很容易理解,只是分为强依靠和弱依靠,区别是弱依靠只管执行的顺序,强依靠除了顺序,还要正确,否则后面的不执行,上面的例子是强依靠,下面是弱依靠,加上alwaysrun=”true”

 

@Test
public void serverStartedOk() {}
 
@Test(dependsOnMethods = { "serverStartedOk" },alwaysRun=true)
public void method1() {}
 

如果依赖的测试比较多,例如我还有一个前置测试

 

@Test
public void mqIsOk(){}
 那么我的后续测试就需要增加两个依赖

 

@Test(dependsOnMethods = { "serverStartedOk,mqIsOK" })
public void method1() {}
 需要把所有的依赖全部列出来,这就有出错的倾向和可能。所以可以用分组来代替列出所有的依赖测试:
@Test(groups = { "init" })
public void serverStartedOk() {}

@Test(groups = { "init" })
public void mqIsOk() {}

@Test(dependsOnGroups = {"init"})
public void method1() {}

 简单清楚,不易出错。

猜你喜欢

转载自alexjxd.iteye.com/blog/1898123