2017-05-05 78 views
0

我想多次重新運行一個測試用例。如何在執行方法時設置測試方法的調用次數

我發現:

@Test(invocationCount=10, threadPoolSize=1) 

annotation.setInvocationCount(15); 

改變倍。

但它在案件被調用之前執行。我需要在這種情況下做一些事情,然後我可以知道是否需要重新運行它。是否可以改變案例中的重新運行時間,而不是在它之前定義它?

回答

0

你所尋找的是一個RetryAnalyzerhttp://toolsqa.com/selenium-webdriver/implement-iretryanalyzer-to-retry-failed-test-in-testng-framework/

public class RetryAnalyzer implements IRetryAnalyzer { 

    @Override 
    public boolean retry(ITestResult result) { 
     boolean shouldRetry = // business logic 
     if(shouldRetry) { 
      return true; 
     } 
     return false; 
    } 
} 
+0

你好,謝謝你它的工作原理,但應當將案件無法再觸發重新運行,難道成功也引發重演? –

+0

沒有。 'invocationCount'沒有任何監聽器。但是您可能會失敗(通過例外)您想要重新運行的情況,然後使用重試分析器機制。 – juherr

相關問題