这是TestNG中可用的注释及其属性的快速概述。
TestNG类的配置信息:
@BeforeSuite:带注释的方法将在该套件中的所有测试运行之前运行。 @AfterSuite:带注释的方法将在运行此套件中的所有测试之后运行。 @BeforeTest:带注释的方法将在运行任何属于<test>标记内的类的测试方法之前运行。 @AfterTest:带注释的方法将在所有属于<test>标记内的类的测试方法运行后运行。 @BeforeGroups:此配置方法将在其之前运行的组的列表。保证此方法可以在调用属于任何一个组的第一个测试方法之前不久运行。 @AfterGroups:此配置方法将在其后运行的组的列表。保证在调用属于这些组中任何一个的最后一个测试方法后不久便可以运行该方法。 @BeforeClass:带注释的方法将在调用当前类中的第一个测试方法之前运行。 @AfterClass:带注释的方法将在运行当前类中的所有测试方法之后运行。 @BeforeMethod:带注释的方法将在每个测试方法之前运行。 @AfterMethod:带注释的方法将在每个测试方法之后运行。 方法说明: alwaysRun: 对于before方法(beforeSuite,beforeTest,beforeTestClass和beforeTestMethod,但不是beforeGroups):如果设置为true,则无论配置文件属于哪个组,都将运行此配置方法。 对于after方法(afterSuite,afterClass,...):如果设置为true,则即使先前调用的一个或多个方法失败或被跳过,此配置方法也将运行。 dependsOnGroups:此方法所依赖的组列表。 dependsOnMethods:此方法所依赖的方法列表。 enabled:是否启用了此类/方法上的方法。 groups:此类/方法所属的组的列表。 inheritGroups:如果为true,则此方法将属于在类级别@Test注释中指定的组。 onlyForGroups:仅适用于@BeforeMethod和@AfterMethod。 如果指定,则仅当相应的测试方法属于列出的组之一时,才调用此setup / teardown方法。
TestNG类的超类中注释的行为
当放置在TestNG类的超类上时,上面的注释也将被继承(继承)。例如,这对于集中公共超类中多个测试类的测试设置很有用。
在这种情况下,TestNG保证“ @Before”方法以继承顺序执行(首先是最高父类,然后沿着继承链执行),“ @ After”方法以相反的顺序执行(沿着继承链执行)。
@DataProvider
将方法标记为为测试方法提供数据。 带注释的方法必须返回一个Object[][],可以为每个Object[]分配测试方法的参数列表。 想要从此DataProvider接收数据的@Test方法需要使用等于此注释名称的dataProvider名称。 name :此数据提供者的名称。 如果未提供,则此数据提供者的名称将自动设置为方法的名称。 parallel :如果设置为true,则使用此数据提供程序生成的测试将并行运行。 默认值为false。
@Factory
将方法标记为工厂,该方法返回TestNG将用作Test类的对象。 该方法必须返回Object[]。
@Listeners
在测试类上定义侦听器。 value 扩展org.testng.ITestNGListener的类的数组。
@Parameters
描述如何将参数传递给@Test方法。 value 用于填充此方法参数的变量列表。
@Test
将类或方法标记为测试的一部分。 alwaysRun 如果设置为true,则此测试方法将始终运行,即使它依赖于失败的方法也是如此。 dataProvider 此测试方法的数据提供者的名称。 dataProviderClass 在哪里寻找数据提供者的类。如果未指定,将在当前测试方法的类或其基类之一上查找数据提供程序。如果指定了此属性,则数据提供者方法在指定的类上必须是静态的。 dependsOnGroups 此方法所依赖的组的列表。 dependsOnMethods 此方法所依赖的方法列表。 description 此方法的说明。 enabled 是否启用此类/方法上的方法。 ExpectedExceptions 预期测试方法将引发的异常列表。如果未抛出异常或此列表中的异常,则此测试将标记为失败。 groups 此类/方法所属的组的列表。 invocationCount 应该调用此方法的次数。 invocationTimeOut 对于所有调用计数的累积时间,此测试应花费的最大毫秒数。 如果未指定invocationCount,则将忽略此属性。 priority 此测试方法的优先级。 优先级较低的将优先安排。 successPercentage 此方法预期的成功百分比 singleThreaded 如果设置为true,则即使当前正在使用parallel =“ methods”运行测试,也保证该测试类上的所有方法都可以在同一线程中运行。 此属性只能在类级别使用,如果在方法级别使用,则将被忽略。 注意:此属性以前称为顺序属性(现已弃用)。 timeOut 此测试应花费的最大毫秒数。 threadPoolSize 此方法的线程池大小。 该方法将从invocationCount指定的多个线程中调用。注意:如果未指定invocationCount,则忽略此属性
以上就是TestNG的注解了,来记录下,方便后续的查阅和回顾~