0
を実行するために発生します再実行TestNGのテストでは、私はこのようなテストを持っているテストは永遠
public class Test1 extends AbstractTest{
@Test(retryAnalyzer=Retry.class)
public void test(){
System.out.println(this.getClass().getName() + " running");
Assert.fail();
}
私はこのような再試行クラスを持っている:私は、テストを実行すると
public class Retry implements IRetryAnalyzer{
private int retryCount = 0;
private int maxRetryCount = 3;
public boolean retry(ITestResult result) {
if (retryCount < maxRetryCount) {
System.out.println("Retrying test "
+ result.getName() + " with status "
+ getResultStatusName(result.getStatus())
+ " for the " + (retryCount+1) + " time(s).");
retryCount++;
return true;
}
return false;
}
public String getResultStatusName(int status) {
String resultName = null;
if(status==1)
resultName = "SUCCESS";
if(status==2)
resultName = "FAILURE";
if(status==3)
resultName = "SKIP";
return resultName;
}
}
、それは無限に繰り返され、コンソール出力としてこれを与える:
tests.Test1 running
Retrying test test with status FAILURE for the 1 time(s).
tests.Test1 running
Retrying test test with status FAILURE for the 2 time(s).
Retrying test test with status FAILURE for the 3 time(s).
tests.Test1 running
tests.Test1 running
tests.Test1 running
tests.Test1 running
tests.Test1 running
tests.Test1 running
tests.Test1 running
tests.Test1 running
などなど...
2回目の実行に失敗するのはなぜですか?なぜそれは無期限に実行されますか?どのように私はそれが3回まで、または多くの場合、私はMaxRetryCountを設定して再試行し、実行の望ましい動作をさせることができますか?
どのバージョンを使用していますか?最新のバージョンを試してみてください:https://github.com/cbeust/testng/blob/master/src/test/java/test/retryAnalyzer/RetryAnalyzerTest.java – juherr
6.8.21がバージョンです。私はそれ以降のバージョンを確認します。 – item5
これは機能しました。これを答えると、私はそれを受け入れるとマークします。どうもありがとう。 – item5