TestNG基本注解

在JUnit 3中用於指示測試方法的傳統方式是將其名稱加上首碼。 這是一個非常有效的方法,用於將類中的某些方法標記為具有特殊意義,但是命名不能很好地擴展(如果我們要為不同的框架添加更多的標籤呢?)而且非常不靈活的(如果想傳遞額外的參數到測試框架呢怎麼辦?)。

注解從JDK 5開始正式添加到Java語言中,TestNG選擇使用注解來注釋測試類。

以下是TestNG支持的注釋列表:

注解 描述
@BeforeSuite 在該套件的所有測試都運行在注釋的方法之前,僅運行一次。
@AfterSuite 在該套件的所有測試都運行在注釋方法之後,僅運行一次。
@BeforeClass 在調用當前類的第一個測試方法之前運行,注釋方法僅運行一次。
@AfterClass 在調用當前類的第一個測試方法之後運行,注釋方法僅運行一次
@BeforeTest 注釋的方法將在屬於<test>標籤內的類的所有測試方法運行之前運行。
@AfterTest 注釋的方法將在屬於<test>標籤內的類的所有測試方法運行之後運行。
@BeforeGroups 配置方法將在之前運行組列表。 此方法保證在調用屬於這些組中的任何一個的第一個測試方法之前不久運行。
@AfterGroups 此配置方法將在之後運行組列表。該方法保證在調用屬於任何這些組的最後一個測試方法之後不久運行。
@BeforeMethod 注釋方法將在每個測試方法之前運行。
@AfterMethod 注釋方法將在每個測試方法之後運行。
@DataProvider 標記一種方法來提供測試方法的數據。 注釋方法必須返回一個Object [] [],其中每個Object []可以被分配給測試方法的參數列表。 要從該DataProvider接收數據的@Test方法需要使用與此注釋名稱相等的dataProvider名稱。
@Factory 將一個方法標記為工廠,返回TestNG將被用作測試類的對象。 該方法必須返回Object []
@Listeners 定義測試類上的偵聽器。
@Parameters 描述如何將參數傳遞給@Test方法。
@Test 將類或方法標記為測試的一部分。

使用注釋/注解的好處

以下是使用注釋/注解的一些好處:

  • TestNG通過查找注釋/注解來識別它感興趣的方法。 因此,方法名稱不限於任何模式或格式。

  • 可以將其他參數傳遞給注釋。

  • 注釋是強類型的,所以編譯器會馬上標記任何錯誤。

  • 測試類不再需要擴展任何東西(如TestCase,對於JUnit3)。


上一篇: TestNG Hello World入門示例 下一篇: TestNG配置注解實例