Testng-group-test
TestNG-グループテスト
グループテストはTestNGの新しい革新的な機能であり、JUnitフレームワークには存在しません。 メソッドを適切な部分にディスパッチし、テストメソッドの高度なグループ化を実行できます。
グループに属するメソッドを宣言できるだけでなく、他のグループを含むグループを指定することもできます。 次に、TestNGを呼び出して、特定のグループセット(または正規表現)を含めるように要求し、別のセットを除外することができます。
グループテストは、テストの分割方法に最大限の柔軟性を提供します。2つの異なるテストセットを連続して実行する場合、何も再コンパイルする必要はありません。
グループは、<groups>タグを使用してtestng.xmlファイルで指定されます。 <test>または<suite>タグの下にあります。 <suite>タグで指定されたグループは、その下のすべての<test>タグに適用されます。
次に、グループテストの動作を確認する例を見てみましょう。
クラスを作成する
- C:\> TestNG_WORKSPACE に MessageUtil.java などのテスト対象のJavaクラスを作成します。
テストケースクラスを作成する
GroupTestExample.javaなどのJavaテストクラスを作成します。
テストメソッドtestPrintMessage()およびtestSalutationMessage()をテストクラスに追加します。
2つのカテゴリにテスト方法をグループ化します-
チェックインテスト(checkintest)-新しいコードを送信する前に、これらのテストを実行する必要があります。 通常は高速で、基本的な機能が壊れていないことを確認してください。
機能テスト(functest)-これらのテストは、ソフトウェアのすべての機能をカバーし、少なくとも1日に1回実行する必要がありますが、理想的には継続的に実行することをお勧めします。
testng.xmlを作成する
テストケースを実行するには、 C:\> TestNG_WORKSPACE にtestng.xmlを作成します。 ここでは、グループ_functest_に属するテストのみを実行します。
javacを使用して、MessageUtil、テストケースクラスをコンパイルします。
次に、testng.xmlを実行します。これは、グループ_functest_に属しているため、メソッドtestPrintMessage()のみを実行します。
出力を確認します。 メソッドtestPrintMessage()のみが実行されます。
グループのグループ
グループには他のグループを含めることもできます。 これらのグループは MetaGroups と呼ばれます。 たとえば、_checkintest_および_functest_を含むグループ_all_を定義できます。 次のようにtestng.xmlファイルを変更しましょう-
上記のtestng.xmlを実行すると、3つのテストすべてが実行され、次の結果が得られます-
除外グループ
以下に示すように、<exclude>タグを使用してグループを無視できます-