Testng-basic-annotations
TestNG-基本的な注釈
JUnit 3でテストメソッドを示す従来の方法は、名前の前にtestを付けることです。 これは、クラス内の特定のメソッドに特別な意味があるとタグ付けするための非常に効果的なメソッドですが、ネーミングはあまりうまくスケールしません(異なるフレームワークにさらにタグを追加したい場合はどうでしょうか?)追加のパラメーターをテストフレームワークに渡したいですか?)。
JDK 5ではJava言語に注釈が正式に追加され、TestNGは注釈を使用してテストクラスに注釈を付けることを選択しました。
TestNGがサポートする注釈のリストは次のとおりです-
Sr.No. | Annotation & Description |
---|---|
1 |
@BeforeSuite 注釈付きメソッドは、このスイートのすべてのテストが実行される前に一度だけ実行されます。 |
2 |
@AfterSuite 注釈付きメソッドは、このスイートのすべてのテストが実行された後に一度だけ実行されます。 |
3 |
@BeforeClass 注釈付きメソッドは、現在のクラスの最初のテストメソッドが呼び出される前に1回だけ実行されます。 |
4 |
@AfterClass 注釈付きメソッドは、現在のクラスのすべてのテストメソッドが実行された後に1回だけ実行されます。 |
5 |
@BeforeTest 注釈付きメソッドは、<test>タグ内のクラスに属するテストメソッドが実行される前に実行されます。 |
6 |
@AfterTest 注釈付きメソッドは、<test>タグ内のクラスに属するすべてのテストメソッドが実行された後に実行されます。 |
7 |
@BeforeGroups この構成メソッドが以前に実行されるグループのリスト。 このメソッドは、これらのグループのいずれかに属する最初のテストメソッドが呼び出される直前に実行されることが保証されています。 |
8 |
@AfterGroups この構成メソッドが実行されるグループのリスト。 このメソッドは、これらのグループのいずれかに属する最後のテストメソッドが呼び出された直後に実行されることが保証されています。 |
9 |
@BeforeMethod 注釈付きメソッドは、各テストメソッドの前に実行されます。 |
10 |
@AfterMethod 注釈付きメソッドは、各テストメソッドの後に実行されます。 |
11 |
@DataProvider メソッドをテストメソッドのデータを提供するものとしてマークします。 注釈付きメソッドは、Object [] []を返す必要があります。各Object []には、テストメソッドのパラメーターリストを割り当てることができます。 このDataProviderからデータを受信する@Testメソッドは、このアノテーションの名前と等しいdataProvider名を使用する必要があります。 |
12 |
@Factory TestNGがTestクラスとして使用するオブジェクトを返すファクトリとしてメソッドをマークします。 メソッドはObject []を返す必要があります。 |
13 |
@Listeners テストクラスのリスナーを定義します。 |
14 |
@Parameters @Testメソッドにパラメーターを渡す方法を説明します。 |
15 |
@Test クラスまたはメソッドをテストの一部としてマークします。 |
注釈を使用する利点
以下は、注釈を使用する利点の一部です-
- TestNGは、アノテーションを検索することにより、関心のあるメソッドを識別します。 したがって、メソッド名はパターンや形式に制限されません。
- 追加のパラメーターを注釈に渡すことができます。
- 注釈は強く型付けされているため、コンパイラは間違いをすぐに報告します。
- テストクラスは何も拡張する必要がなくなりました(JUnit 3のTestCaseなど)。