Created
March 17, 2017 02:47
-
-
Save krmahadevan/7ad480c1fcd8257005b3ae254d68a5d0 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
1 | |
Retrying test test with status FAILURE for the 1 time(s). | |
Test ignored. | |
java.lang.IllegalArgumentException: wrong number of arguments | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) | |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
at java.lang.reflect.Method.invoke(Method.java:498) | |
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104) | |
at org.testng.internal.Invoker.invokeMethod(Invoker.java:645) | |
at org.testng.internal.Invoker.retryFailed(Invoker.java:998) | |
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1200) | |
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129) | |
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112) | |
at org.testng.TestRunner.privateRun(TestRunner.java:756) | |
at org.testng.TestRunner.run(TestRunner.java:610) | |
at org.testng.SuiteRunner.runTest(SuiteRunner.java:387) | |
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:382) | |
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340) | |
at org.testng.SuiteRunner.run(SuiteRunner.java:289) | |
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) | |
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) | |
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1293) | |
at org.testng.TestNG.runSuitesLocally(TestNG.java:1218) | |
at org.testng.TestNG.runSuites(TestNG.java:1133) | |
at org.testng.TestNG.run(TestNG.java:1104) | |
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72) | |
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:127) | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) | |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
at java.lang.reflect.Method.invoke(Method.java:498) | |
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147) | |
2 | |
Retrying test test with status FAILURE for the 1 time(s). | |
Test ignored. | |
java.lang.IllegalArgumentException: wrong number of arguments | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) | |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
at java.lang.reflect.Method.invoke(Method.java:498) | |
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:104) | |
at org.testng.internal.Invoker.invokeMethod(Invoker.java:645) | |
at org.testng.internal.Invoker.retryFailed(Invoker.java:998) | |
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1200) | |
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:129) | |
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:112) | |
at org.testng.TestRunner.privateRun(TestRunner.java:756) | |
at org.testng.TestRunner.run(TestRunner.java:610) | |
at org.testng.SuiteRunner.runTest(SuiteRunner.java:387) | |
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:382) | |
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:340) | |
at org.testng.SuiteRunner.run(SuiteRunner.java:289) | |
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52) | |
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86) | |
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1293) | |
at org.testng.TestNG.runSuitesLocally(TestNG.java:1218) | |
at org.testng.TestNG.runSuites(TestNG.java:1133) | |
at org.testng.TestNG.run(TestNG.java:1104) | |
at org.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:72) | |
at org.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:127) | |
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) | |
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) | |
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) | |
at java.lang.reflect.Method.invoke(Method.java:498) | |
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147) | |
3 | |
=============================================== | |
Default Suite | |
Total tests run: 5, Failures: 2, Skips: 2 | |
=============================================== | |
Process finished with exit code 0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.rationaleemotions.stackoverflow; | |
import org.testng.IRetryAnalyzer; | |
import org.testng.ITestContext; | |
import org.testng.ITestResult; | |
import org.testng.annotations.DataProvider; | |
import org.testng.annotations.Test; | |
public class RetryWithDataProvider { | |
@DataProvider(name = "Dataprovider") | |
public Object[][] dataprovider() { | |
return new Object[][]{{1}, {2,}, {3}}; | |
} | |
@Test(dataProvider = "Dataprovider", retryAnalyzer = Retry.class) | |
public void test(int data, ITestContext itx) { | |
System.out.println(data); | |
org.testng.Assert.assertEquals(data, 3); | |
} | |
public static class Retry implements IRetryAnalyzer { | |
private static int retryCount = 0; | |
private int maxRetryCount = 1; | |
// Below method returns 'true' if the test method has to be retried else 'false' | |
//and it takes the 'Result' as parameter of the test method that just ran | |
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; | |
} | |
retryCount = 0; | |
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; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment