@BeforeSuite
在该套件中所有测试运行之前 运行,仅运行一次
@AfterSuite
在该套件中所有测试运行之后 运行,仅运行一次
@BeforeGroups
在各个组组成的list中,每个组执行之前运行
@AfterGroups
在各个组组成的list中,每个组执行之后运行
@BeforeClass
在调用当前类的第一个测试方法之前运行,仅运行一次
@AfterClass
在当前类的所有测试方法都运行完成之后运行,仅运行一次
@BeforeTest
在当前类中每个测试方法执行之前运行
@AfterTest
在当前类中每个测试方法执行之后运行
以上注解,在TestNG类中的超类中:
当放置在TestNG类的超类上时,上面的注解也将被继承,TestNG保证"@Before"方法以继承顺序执行(首先是最高超类,然后是继承链),而"@After"方法是相反顺序的。
@After/@Before属性:
- alwaysRun:对于before(除了beforeGroups):如果设置为true,则将运行此方法,而不管它属于哪个组。
对于after方法:如果设置为true,即使先前调用的一个或多个方法失败或被跳过,也会运行此配置方法。 - dependsOnGroups:该方法依赖的方法组
- dependsOnMethods:该方法依赖的方法
- enable:
- groups:这个类或方法属于的组
- inheritGroups:如果设置为true,则此方法将属于在类级别的@Test注释中指定的组。
- onlyForGroups:
- onlyForGroups:仅适用于@BeforeMethod和@AfterMethod。如果指定,则只有在相应的测试方法属于列出的组之一时才会调用setup/teardown方法。