2

以下のコードを使用して、2 つの TestNG スイートを同時に実行したいと考えています。

TestNG testng = new TestNG();
List<String> suites = Lists.newArrayList();
suites.add("src/test/resources/NewRegTest.xml");
suites.add("src/test/resources/NewRegTest1.xml");
testng.setSuiteThreadPoolSize(2);
testng.setTestSuites(suites);
testng.run();

コードは正常に動作しています。testng-failed.xml問題は、スイートごとに個別に取得したいことです。現在、TestNG はスイートが実行されるたびに xml を書き換え続けているため、最初のスイートから失敗したテストケースを確認できません。

4

2 に答える 2

0

ここでの問題は、実行ごとにレポートを保持する方法がないことです。いずれかのレポートの場所を指定すると、新しい実行が発生したときにすべてのレポートが置き換えられます。あなたができる1つのトリックは、レポートディレクトリにタイムスタンプを追加することです。これにより、実行ごとにレポート ディレクトリが生成され、履歴レポートが安全に保存されます。

java.util.Date date= new java.util.Date(); 
testng.setOutputDirectory("src/main/reports"+new Timestamp(date.getTime()));
testng.run();
于 2012-10-02T08:40:40.063 に答える
0

両方の xml ファイルで同じスイート名を使用していると思います。

<suite verbose="0" name="**Suite1**">

testng は、出力ディレクトリの下にスイート名ごとにサブフォルダーを作成し、そのフォルダーにはそのスイートの testng-failed.xml が含まれます。別の名前を使用すると、問題が解決します。

于 2012-10-05T17:31:41.943 に答える