@BeforeSuite
@BeforeSuite: 被注解的方法,会在当前suite
中所有测试方法之前被调用
@AfterSuite
@AfterSuite: 被注解的方法,会在当前suite
中所有测试方法之后被调用
@BeforeTest
@BeforeTest: 被注解的方法,会在测试运行前被调用
@AfterTest
@AfterTest: 被注解的方法,会在测试运行后被调用
@BeforeGroups
@BeforeGroups: 被注解的方法会在组列表中之前被调用。这个方法会在每个组中第一个测试方法被调用之前被调用
@AfterGroups
@AfterGroups: 被注解的方法会在组列表中之后被调用。这个方法会在每个组中最后一个测试方法被调用之后被调用
@BeforeClass
@BeforeClass: 被注解的方法,会在当前类第一个测试方法运行前被调用
@AfterClass
@AfterClass: 被注解的方法,会在当前类所有测试方法运行后被调用
@BeforeMethod
@BeforeMethod: 被注解的方法,会在运行每个测试方法之前调用
@AfterMethod
@AfterMethod: 被注解的方法,会在每个测试方法运行之后被调用
@DataProvider
@DataProvider: 把此方法标记为为测试方法提供数据的方法。被此注释标记的方法必须返回Object[][]
,其中的每个Object[]
可以被分配给测试方法列表中的方法当做参数。那些需要从DataProvider
接受数据的@Test
方法,需要使用一个dataprovider
名字,此名称必须与这个注解中的名字相同。
@Factory
@Factory: 把一个方法标记为工厂方法,并且必须返回被TestNG测试类所使用的对象们。 此方法必须返回 Object[]
@Parameters
@Parameters: 说明如何给一个@Test
方法传参
@Test
@Test: 把一个类或者方法标记为测试的一部分
- alwaysRun
对于在方法之前的调用(beforeSuite, beforeTest, beforeTestClass 和 beforeTestMethod, 除了beforeGroups): 若为true
,这个配置方法无视其所属的组而运行.对于在方法之后的调用(afterSuite, afterClass, ...): 若为true
, 这个配置方法会运行,即使其之前一个或者多个被调用的方法失败或者被跳过。- dependsOnGroups
方法所依赖的一组group
列表- dependsOnMethods
方法所依赖的一组method
列表- enabled
在当前class/method
中被此annotation
标记的方法是否参与测试(不启用则不在测试中运行)- groups
一组group
列表,指明了这个class/method
的所属- inheritGroups
如果是true,则此方法会从属于在类级由@Test注解中所指定的组- name
DataProvider的名字- value
方法参数变量的列表- dataProvider
这个测试方法的dataProvider
- dataProviderClass
指明去那里找data provider
类。如果不指定,那么就当前测试方法所在的类或者它个一个基类中去找。如果指定了,那么data provider
方法必须是指定的类中的静态方法- description
方法的说明- expectedExceptions
此方法会抛出的异常列表。如果没有异常或者一个不在列表中的异常被抛出,则测试被标记为失败- invocationCount
方法被调用的次数- invocationTimeOut
当前测试中所有调用累计时间的最大毫秒数。如果invocationCount
属性没有指定,那么此属性会被忽略- successPercentage
当前方法执行所期望的success
的百分比- sequential
如果是true
,那么测试类中所有的方法都是按照其定义顺序执行,即使是当前的测试使用parallel="methods"
此属性只能用在类级别,如果用在方法级,就会被忽略- timeOut
当前测试所能运行的最大毫秒数- threadPoolSize
此方法线程池的大小。 此方法会根据制定的invocationCount
值,以多个线程进行调用。注意:如果没有指定invocationCount
属性,那么此属性就会被忽略