25

大量のメソッドを含む TestNG スイートがあります。TestNG ランナーの上に構築されたラッパーを使用して、このスイートを実行します。スイート内のすべてのテストが 1 つを除いて失敗します。失敗したテストを 1 つだけ実行するには、testng.xml に何を記述すればよいですか?

明白な解決策は、一意のグループ名をすべてのメソッドに割り当ててから、testng.xml で名前を指定することです。これは 2 ~ 3 つのメソッドの場合に機能しますが、テストの数が増えると難しくなります。

4

6 に答える 6

32

の代わりにexclude、 を使用できますinclude。それはまさにあなたが望むものです。このテストのみが実行されます。

  <classes>
    <class name="test.IndividualMethodsTest">
      <methods>
        <include name="testMethod" />
      </methods>
    </class>
  </classes>
于 2014-01-15T11:32:00.177 に答える
8

これを試して:

  <classes>
    <class name="test.IndividualMethodsTest">
      <methods>
        <exclude name="testMethod" />
      </methods>
    </class>
  </classes>
于 2010-08-20T12:03:59.840 に答える
7

各実行後、TestNG は、失敗したテストのみを含む testng-failed.xml という名前のファイルを作成します。そのファイルで TestNG を再度呼び出すだけです。

java org.testng.TestNG testng.xml java org.testng.TestNG testng-failed.xml

(カスタマイズされたランナーを使用しているように見えるため、org.testng.TestNG を独自のランナーに置き換えます)。

于 2009-11-19T02:03:27.457 に答える
1

また、失敗を追跡する独自のITestListenerを作成することもできます(独自のラッパーがあるため)。失敗したテストのみを含む独自の失敗スイート ファイルを生成します。TestNG のリスナー/インターセプター フックは非常に優れています。職場では、いくつかの方法でそれらを使用して TestNG を拡張しました。

  • 生成されたデータセットのキャプチャ/再生
  • データベースへの結果ロギング
  • カスタマイズされたテスト出力 (ログ)
  • @DataProvider によって提供されるデータセットの ID、説明などのメタデータ
  • テスト ケースに対する環境依存の制限の実行時チェック
于 2009-12-07T23:57:49.533 に答える
1

これを行うにはいくつかの方法があります。

開発に 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 内にプラグインがインストールされていないと思います

于 2009-11-04T22:35:46.317 に答える