大量のメソッドを備えた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プラグインをインストールする場合。次の手順に従ってください。1-Eclipseの[ヘルプ]メニューに移動します。 2- [新しいソフトウェアのインストール]を選択します。3-追加 " http://beust.com/Eclipse 。"
指定したエラーの場合に機能しますEclippseIDE内にプラグインがインストールされていないと思います
プログラムでテスト方法を選択し、トップメニューの[実行]-> [実行]に移動するか、CTRL + F11を実行します。これにより、XMLテストスイートとは独立してテストが開始されます。