大量のメソッドを含む TestNG スイートがあります。TestNG ランナーの上に構築されたラッパーを使用して、このスイートを実行します。スイート内のすべてのテストが 1 つを除いて失敗します。失敗したテストを 1 つだけ実行するには、testng.xml に何を記述すればよいですか?
明白な解決策は、一意のグループ名をすべてのメソッドに割り当ててから、testng.xml で名前を指定することです。これは 2 ~ 3 つのメソッドの場合に機能しますが、テストの数が増えると難しくなります。
大量のメソッドを含む TestNG スイートがあります。TestNG ランナーの上に構築されたラッパーを使用して、このスイートを実行します。スイート内のすべてのテストが 1 つを除いて失敗します。失敗したテストを 1 つだけ実行するには、testng.xml に何を記述すればよいですか?
明白な解決策は、一意のグループ名をすべてのメソッドに割り当ててから、testng.xml で名前を指定することです。これは 2 ~ 3 つのメソッドの場合に機能しますが、テストの数が増えると難しくなります。
の代わりにexclude
、 を使用できますinclude
。それはまさにあなたが望むものです。このテストのみが実行されます。
<classes>
<class name="test.IndividualMethodsTest">
<methods>
<include name="testMethod" />
</methods>
</class>
</classes>
これを試して:
<classes>
<class name="test.IndividualMethodsTest">
<methods>
<exclude name="testMethod" />
</methods>
</class>
</classes>
各実行後、TestNG は、失敗したテストのみを含む testng-failed.xml という名前のファイルを作成します。そのファイルで TestNG を再度呼び出すだけです。
java org.testng.TestNG testng.xml java org.testng.TestNG testng-failed.xml
(カスタマイズされたランナーを使用しているように見えるため、org.testng.TestNG を独自のランナーに置き換えます)。
また、失敗を追跡する独自のITestListenerを作成することもできます(独自のラッパーがあるため)。失敗したテストのみを含む独自の失敗スイート ファイルを生成します。TestNG のリスナー/インターセプター フックは非常に優れています。職場では、いくつかの方法でそれらを使用して TestNG を拡張しました。
これを行うにはいくつかの方法があります。
開発に Eclipse を使用していますか? TestNG 用の Eclipse プラグインがあり、特定のテストを実行するための最も簡単な方法だと思います。プラグインを使用すると、利用可能なテストのスイート、グループ、クラス、またはメソッドを実行できます。
そうでない場合は、テストを起動するための Ant タスク ( http://testng.org/doc/ant.html ) をセットアップし、「classfilesetref」などの属性を使用して、実行するテストのリストを提供できると思います。別のファイルでテストを指定できるため、テストを実行するたびに build.xml を更新する必要はありません。
testng Plugin.Just をインストールするには、次の手順に従います。 1-Eclipse の [ヘルプ] メニューに移動します。2-「新しいソフトウェアのインストール」を選択します。 3-「http://beust.com/eclipseを追加します。」
指定したエラーが発生した場合に機能します。Eclipse IDE 内にプラグインがインストールされていないと思います