static Throwable getExceptionDetails(ITestContext context, Object instance) { Set<ITestResult> configResults = context.getFailedConfigurations().getAllResults(); if (configResults.isEmpty()) { configResults = context.getSkippedConfigurations().getAllResults(); } if (configResults.isEmpty()) { //if we are here it means we have a test method skip due to a @BeforeSuite failure in a different <test> maybe //So we will have to find out that first failure/skip and get its throwable and pack that information into our //current test method's test result. return getConfigFailureException(context); } for (ITestResult configResult : configResults) { if (sameInstance(configResult, instance)) { return configResult.getThrowable(); } } //If we are here it perhaps means that the test method is being skipped because there was a configuration //failure in a different class due to @BeforeGroups being used. //So lets just find the first exception information and then just pack it in. return configResults.iterator().next().getThrowable(); }
/** Creates a section showing known results for each method */ protected void generateMethodDetailReport(List<ISuite> suites) { m_methodIndex = 0; for (ISuite suite : suites) { Map<String, ISuiteResult> r = suite.getResults(); for (ISuiteResult r2 : r.values()) { ITestContext testContext = r2.getTestContext(); if (r.values().size() > 0) { m_out.println("<h1>" + testContext.getName() + "</h1>"); } resultDetail(testContext.getFailedConfigurations()); resultDetail(testContext.getFailedTests()); resultDetail(testContext.getSkippedConfigurations()); resultDetail(testContext.getSkippedTests()); resultDetail(testContext.getPassedTests()); } } }
public List<ITestResult> getAllTestResults(ISuite suite, boolean testsOnly) { List<ITestResult> result = Lists.newArrayList(); for (ISuiteResult sr : suite.getResults().values()) { result.addAll(sr.getTestContext().getPassedTests().getAllResults()); result.addAll(sr.getTestContext().getFailedTests().getAllResults()); result.addAll(sr.getTestContext().getSkippedTests().getAllResults()); if (! testsOnly) { result.addAll(sr.getTestContext().getPassedConfigurations().getAllResults()); result.addAll(sr.getTestContext().getFailedConfigurations().getAllResults()); result.addAll(sr.getTestContext().getSkippedConfigurations().getAllResults()); } } return result; } }
static Throwable getExceptionDetails(ITestContext context, Object instance) { Set<ITestResult> configResults = context.getFailedConfigurations().getAllResults(); if (configResults.isEmpty()) { configResults = context.getSkippedConfigurations().getAllResults(); } if (configResults.isEmpty()) { // if we are here it means we have a test method skip due to a @BeforeSuite failure in a // different <test> maybe // So we will have to find out that first failure/skip and get its throwable and pack that // information into our // current test method's test result. return getConfigFailureException(context); } for (ITestResult configResult : configResults) { if (sameInstance(configResult, instance)) { return configResult.getThrowable(); } } // If we are here it perhaps means that the test method is being skipped because there was a // configuration // failure in a different class due to @BeforeGroups being used. // So lets just find the first exception information and then just pack it in. return configResults.iterator().next().getThrowable(); }
void computeAndUpdate(ITestContext context) { computeAndUpdate(0, context.getFailedTests(), context.getFailedConfigurations()); computeAndUpdate(1, context.getSkippedTests(), context.getSkippedConfigurations()); computeAndUpdate(2, context.getFailedButWithinSuccessPercentageTests(), null); }
public List<ITestResult> getAllTestResults(ISuite suite, boolean testsOnly) { List<ITestResult> result = Lists.newArrayList(); for (ISuiteResult sr : suite.getResults().values()) { result.addAll(sr.getTestContext().getPassedTests().getAllResults()); result.addAll(sr.getTestContext().getFailedTests().getAllResults()); result.addAll(sr.getTestContext().getSkippedTests().getAllResults()); if (!testsOnly) { result.addAll(sr.getTestContext().getPassedConfigurations().getAllResults()); result.addAll(sr.getTestContext().getFailedConfigurations().getAllResults()); result.addAll(sr.getTestContext().getSkippedConfigurations().getAllResults()); } } return result; } }
/** Creates a section showing known results for each method */ protected void generateMethodDetailReport(List<ISuite> suites) { m_methodIndex = 0; for (ISuite suite : suites) { Map<String, ISuiteResult> r = suite.getResults(); for (ISuiteResult r2 : r.values()) { ITestContext testContext = r2.getTestContext(); if (r.values().size() > 0) { m_out.println("<h1>" + testContext.getName() + "</h1>"); } resultDetail(testContext.getFailedConfigurations()); resultDetail(testContext.getFailedTests()); resultDetail(testContext.getSkippedConfigurations()); resultDetail(testContext.getSkippedTests()); resultDetail(testContext.getPassedTests()); } } }
void computeAndUpdate(ITestContext context) { computeAndUpdate(0, context.getFailedTests(), context.getFailedConfigurations()); computeAndUpdate(1, context.getSkippedTests(), context.getSkippedConfigurations()); computeAndUpdate(2, context.getFailedButWithinSuccessPercentageTests(), null); }
public TestResult(ITestContext context) { testName = context.getName(); Set<ITestResult> failedConfigurations = context .getFailedConfigurations().getAllResults(); Set<ITestResult> failedTests = context.getFailedTests() .getAllResults(); Set<ITestResult> skippedConfigurations = context .getSkippedConfigurations().getAllResults(); Set<ITestResult> skippedTests = context.getSkippedTests() .getAllResults(); Set<ITestResult> passedTests = context.getPassedTests() .getAllResults(); failedConfigurationResults = groupResults(failedConfigurations); failedTestResults = groupResults(failedTests); skippedConfigurationResults = groupResults(skippedConfigurations); skippedTestResults = groupResults(skippedTests); passedTestResults = groupResults(passedTests); failedTestCount = failedTests.size(); skippedTestCount = skippedTests.size(); passedTestCount = passedTests.size(); duration = context.getEndDate().getTime() - context.getStartDate().getTime(); includedGroups = formatGroups(context.getIncludedGroups()); excludedGroups = formatGroups(context.getExcludedGroups()); }
/** Creates a table showing the highlights of each test method with links to the method details */ protected void generateMethodSummaryReport(List<ISuite> suites) { m_methodIndex = 0; startResultSummaryTable(); int testIndex = 1; for (ISuite suite : suites) { if(suites.size()>1) { titleRow(suite.getName(), 5); } Map<String, ISuiteResult> r = suite.getResults(); for (ISuiteResult r2 : r.values()) { ITestContext testContext = r2.getTestContext(); String testName = testContext.getName(); m_testIndex = testIndex; resultSummary(suite, testContext.getFailedConfigurations(), testName, "failed", " (configuration methods)"); resultSummary(suite, testContext.getFailedTests(), testName, "failed", ""); resultSummary(suite, testContext.getSkippedConfigurations(), testName, "skipped", " (configuration methods)"); resultSummary(suite, testContext.getSkippedTests(), testName, "skipped", ""); resultSummary(suite, testContext.getPassedTests(), testName, "passed", ""); testIndex++; } } m_out.println("</table>"); }
public TestResult(ITestContext context) { testName = context.getName(); Set<ITestResult> failedConfigurations = context.getFailedConfigurations().getAllResults(); Set<ITestResult> failedTests = context.getFailedTests().getAllResults(); Set<ITestResult> skippedConfigurations = context.getSkippedConfigurations().getAllResults(); Set<ITestResult> rawSkipped = context.getSkippedTests().getAllResults(); Set<ITestResult> skippedTests = pruneSkipped(rawSkipped); Set<ITestResult> retriedTests = pruneRetried(rawSkipped); Set<ITestResult> passedTests = context.getPassedTests().getAllResults(); failedConfigurationResults = groupResults(failedConfigurations); failedTestResults = groupResults(failedTests); skippedConfigurationResults = groupResults(skippedConfigurations); skippedTestResults = groupResults(skippedTests); retriedTestResults = groupResults(retriedTests); passedTestResults = groupResults(passedTests); failedTestCount = failedTests.size(); retriedTestCount = retriedTests.size(); skippedTestCount = skippedTests.size(); passedTestCount = passedTests.size(); duration = context.getEndDate().getTime() - context.getStartDate().getTime(); includedGroups = formatGroups(context.getIncludedGroups()); excludedGroups = formatGroups(context.getExcludedGroups()); }
public void calculateResultCounts(XmlSuite xmlSuite, SuiteRunnerMap suiteRunnerMap) { ISuite iSuite = suiteRunnerMap.get(xmlSuite); if (iSuite == null) { return; } Map<String, ISuiteResult> results = iSuite.getResults(); if (results == null) { return; } Collection<ISuiteResult> tempSuiteResult = results.values(); for (ISuiteResult isr : tempSuiteResult) { ITestContext ctx = isr.getTestContext(); int passes = ctx.getPassedTests().size(); Map<String, Integer> seggregated = seggregateSkippedTests(ctx); int skipped = seggregated.get(SKIPPED); m_skipped += skipped; int retried = seggregated.get(RETRIED); m_retries += retried; int failed = ctx.getFailedTests().size() + ctx.getFailedButWithinSuccessPercentageTests().size(); m_failed += failed; m_confFailures += ctx.getFailedConfigurations().size(); m_confSkips += ctx.getSkippedConfigurations().size(); m_passes += passes; m_total += passes + failed + skipped + retried; } for (XmlSuite childSuite : xmlSuite.getChildSuites()) { calculateResultCounts(childSuite, suiteRunnerMap); } }
resultSummary( suite, testContext.getSkippedConfigurations(), testName, "skipped",
public void calculateResultCounts(XmlSuite xmlSuite, SuiteRunnerMap suiteRunnerMap) { ISuite iSuite = suiteRunnerMap.get(xmlSuite); if (iSuite != null) { Map<String, ISuiteResult> results = iSuite.getResults(); if (results != null) { Collection<ISuiteResult> tempSuiteResult = results.values(); for (ISuiteResult isr : tempSuiteResult) { ITestContext ctx = isr.getTestContext(); int skipped = ctx.getSkippedTests().size(); int failed = ctx.getFailedTests().size() + ctx.getFailedButWithinSuccessPercentageTests().size(); m_skipped += skipped; m_failed += failed; m_confFailures += ctx.getFailedConfigurations().size(); m_confSkips += ctx.getSkippedConfigurations().size(); m_total += ctx.getPassedTests().size() + failed + skipped; } for (XmlSuite childSuite : xmlSuite.getChildSuites()) { calculateResultCounts(childSuite, suiteRunnerMap); } } } } }
private void writeAllToBuffer(XMLStringBuffer xmlBuffer, ISuiteResult suiteResult) { xmlBuffer.push(XMLReporterConfig.TAG_TEST, getSuiteResultAttributes(suiteResult)); Set<ITestResult> testResults = Sets.newHashSet(); ITestContext testContext = suiteResult.getTestContext(); addAllTestResults(testResults, testContext.getPassedTests()); addAllTestResults(testResults, testContext.getFailedTests()); addAllTestResults(testResults, testContext.getSkippedTests()); addAllTestResults(testResults, testContext.getPassedConfigurations()); addAllTestResults(testResults, testContext.getSkippedConfigurations()); addAllTestResults(testResults, testContext.getFailedConfigurations()); addAllTestResults(testResults, testContext.getFailedButWithinSuccessPercentageTests()); addTestResults(xmlBuffer, testResults); xmlBuffer.pop(); }
private void writeAllToBuffer(XMLStringBuffer xmlBuffer, ISuiteResult suiteResult) { xmlBuffer.push(XMLReporterConfig.TAG_TEST, getSuiteResultAttributes(suiteResult)); Set<ITestResult> testResults = Sets.newHashSet(); ITestContext testContext = suiteResult.getTestContext(); addAllTestResults(testResults, testContext.getPassedTests()); addAllTestResults(testResults, testContext.getFailedTests()); addAllTestResults(testResults, testContext.getSkippedTests()); addAllTestResults(testResults, testContext.getPassedConfigurations()); addAllTestResults(testResults, testContext.getSkippedConfigurations()); addAllTestResults(testResults, testContext.getFailedConfigurations()); addAllTestResults(testResults, testContext.getFailedButWithinSuccessPercentageTests()); addTestResults(xmlBuffer, testResults); xmlBuffer.pop(); }
public List<ITestResult> getConfigurationResults() { List<ITestResult> results = new ArrayList<ITestResult>(); results.addAll(context.getFailedConfigurations().getAllResults()); results.addAll(context.getPassedConfigurations().getAllResults()); results.addAll(context.getSkippedConfigurations().getAllResults()); return results; }
protected int findFailed(ITestContext context) { IResultMap failedConfigurations = context.getFailedConfigurations(); IResultMap skippedConfigurations = context.getSkippedConfigurations(); int countfailed = 0; if (failedConfigurations!= null) { countfailed += failedConfigurations.size(); } if (skippedConfigurations != null) { countfailed += skippedConfigurations.size(); } return countfailed; }
protected String getFailureReason(ITestResult result) { String errorMessage = ""; String message = ""; if (result.getThrowable() != null) { Throwable thr = result.getThrowable(); errorMessage = getFullStackTrace(thr); message = thr.getMessage(); result.getTestContext().setAttribute(SpecialKeywords.TEST_FAILURE_MESSAGE, message); } // handle in case of failed config (exclusion of expected skip) if (errorMessage.isEmpty()) { String methodName; Collection<ITestResult> results = result.getTestContext().getSkippedConfigurations().getAllResults(); for (ITestResult resultItem : results) { methodName = resultItem.getMethod().getMethodName(); if (methodName.equals(SpecialKeywords.BEFORE_TEST_METHOD)) { errorMessage = getFullStackTrace(resultItem.getThrowable()); } } } return errorMessage; }
/** * Check is current method passed according the number of failed tests and * configurations * * @param testContext TestNG's test content * @return TRUE if passed, FALSE otherwise */ protected boolean isTestPassed(ITestContext testContext) { return testContext.getFailedTests().size() == 0 && testContext.getFailedConfigurations().size() == 0 && testContext.getSkippedConfigurations().size() == 0 && testContext.getSkippedTests().size() == 0; }