org.testng.ISuite#getResults ( )源码实例Demo

下面列出了org.testng.ISuite#getResults ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

@Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory) {
    ExtentService.getInstance().setReportUsesManualConfiguration(true);
    ExtentService.getInstance().setAnalysisStrategy(AnalysisStrategy.SUITE);

    for (ISuite suite : suites) {
        Map<String, ISuiteResult> result = suite.getResults();

        for (ISuiteResult r : result.values()) {
            ITestContext context = r.getTestContext();

            ExtentTest suiteTest = ExtentService.getInstance().createTest(r.getTestContext().getSuite().getName());
            buildTestNodes(suiteTest, context.getFailedTests(), Status.FAIL);
            buildTestNodes(suiteTest, context.getSkippedTests(), Status.SKIP);
            buildTestNodes(suiteTest, context.getPassedTests(), Status.PASS);
        }
    }

    for (String s : Reporter.getOutput()) {
        ExtentService.getInstance().setTestRunnerOutput(s);
    }

    ExtentService.getInstance().flush();
}
 
@Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory) {
    ExtentService.getInstance().setReportUsesManualConfiguration(true);
    ExtentService.getInstance().setAnalysisStrategy(AnalysisStrategy.SUITE);

    for (ISuite suite : suites) {
        Map<String, ISuiteResult> result = suite.getResults();

        for (ISuiteResult r : result.values()) {
            ITestContext context = r.getTestContext();

            ExtentTest suiteTest = ExtentService.getInstance().createTest(r.getTestContext().getSuite().getName());
            buildTestNodes(suiteTest, context.getFailedTests(), Status.FAIL);
            buildTestNodes(suiteTest, context.getSkippedTests(), Status.SKIP);
            buildTestNodes(suiteTest, context.getPassedTests(), Status.PASS);
        }
    }

    for (String s : Reporter.getOutput()) {
        ExtentService.getInstance().setTestRunnerOutput(s);
    }

    ExtentService.getInstance().flush();
}
 
/** Creates a section showing known results for each method */
protected void generateMethodDetailReport(List<ISuite> suites) {
	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());
		}
	}
}
 
源代码4 项目: pxf   文件: CustomAutomationReport.java
@Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory) {

	StringBuilder sBuilder = new StringBuilder();

	// Iterating over each suite
	for (ISuite suite : suites) {

		// Getting the results for the each suite
		Map<String, ISuiteResult> suiteResults = suite.getResults();
		for (ISuiteResult sr : suiteResults.values()) {
			// get context for result
			ITestContext tc = sr.getTestContext();
			// go over all cases
			for (ITestNGMethod method : tc.getAllTestMethods()) {
				// if a case has "ExpectedFaiGPDBWritable.javalure" annotation, insert to sBuilder

				if (method.getConstructorOrMethod().getMethod().getAnnotation(ExpectedFailure.class) != null) {
					sBuilder.append(method.getInstance().getClass().getName() + "/" + method.getMethodName()).append(System.lineSeparator());
				}
			}
		}
	}

	// write results to file
	try {
		FileUtils.writeStringToFile(new File(outputDirectory + "/automation_expected_failures.txt"), sBuilder.toString(), false);
	} catch (IOException e) {
		e.printStackTrace();
	}
}
 
/**
 * Creates a table showing the highlights of each test method with links to
 * the method details
 */
protected void generateMethodSummaryReport(List<ISuite> suites) {
	startResultSummaryTable("methodOverview");
	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.getSkippedConfigurations(),
			// testName, "skipped",
			// " (configuration methods)");
			resultSummary(suite, testContext.getSkippedTests(), testName, "skipped", "");
			// resultSummary(suite, testContext.getFailedConfigurations(),
			// testName, "failed",
			// " (configuration methods)");
			resultSummary(suite, testContext.getFailedTests(), testName, "failed", "");
			resultSummary(suite, testContext.getPassedTests(), testName, "passed", "");

			testIndex++;
		}
	}
	m_out.println("</table>");
}
 
源代码6 项目: PatatiumWebUi   文件: TestReport.java
@Override
public void generateReport(List<XmlSuite> xmlSuites, List<ISuite> suites, String outputDirectory)
{
	List<ITestResult> list = new ArrayList<ITestResult>();
	for (ISuite suite : suites) {
		Map<String, ISuiteResult> suiteResults = suite.getResults();
		for (ISuiteResult suiteResult : suiteResults.values()) {
			ITestContext testContext = suiteResult.getTestContext();
			IResultMap passedTests = testContext.getPassedTests();
			IResultMap failedTests = testContext.getFailedTests();
			IResultMap skippedTests = testContext.getSkippedTests();
			IResultMap failedConfig = testContext.getFailedConfigurations();
			list.addAll(this.listTestResult(passedTests));
			list.addAll(this.listTestResult(failedTests));
			list.addAll(this.listTestResult(skippedTests));
			//list.addAll(this.listTestResult(failedConfig));
		}
	}
	CopyReportResources reportReource=new CopyReportResources();

	try {
		reportReource.copyResources();
	} catch (Exception e) {
		// TODO: handle exception
		e.printStackTrace();
	}
	this.sort(list);
	this.outputResult(list, outputDirectory+"/report.html");


}
 
public void generateSuiteSummaryReport(List<ISuite> suites) {
	tableStart("testOverview", null);
	m_out.print("<tr>");
	tableColumnStart("Test");
	tableColumnStart("Methods<br/>Passed");
	tableColumnStart("Scenarios<br/>Passed");
	tableColumnStart("# skipped");
	tableColumnStart("# failed");
	tableColumnStart("Total<br/>Time");
	tableColumnStart("Included<br/>Groups");
	tableColumnStart("Excluded<br/>Groups");
	m_out.println("</tr>");
	NumberFormat formatter = new DecimalFormat("#,##0.0");
	int qty_tests = 0;
	int qty_pass_m = 0;
	int qty_pass_s = 0;
	int qty_skip = 0;
	int qty_fail = 0;
	long time_start = Long.MAX_VALUE;
	long time_end = Long.MIN_VALUE;
	m_testIndex = 1;
	for (ISuite suite : suites) {
		if (suites.size() > 1) {
			titleRow(suite.getName(), 8);
		}
		Map<String, ISuiteResult> tests = suite.getResults();
		for (ISuiteResult r : tests.values()) {
			qty_tests += 1;
			ITestContext overview = r.getTestContext();
			startSummaryRow(overview.getName());

			getAllTestIds(overview, suite);
			int q = getMethodSet(overview.getPassedTests(), suite).size();
			qty_pass_m += q;
			summaryCell(q, Integer.MAX_VALUE);
			q = overview.getPassedTests().size();
			qty_pass_s += q;
			summaryCell(q, Integer.MAX_VALUE);

			q = getMethodSet(overview.getSkippedTests(), suite).size();
			qty_skip += q;
			summaryCell(q, 0);

			q = getMethodSet(overview.getFailedTests(), suite).size();
			qty_fail += q;
			summaryCell(q, 0);

			time_start = Math.min(overview.getStartDate().getTime(), time_start);
			time_end = Math.max(overview.getEndDate().getTime(), time_end);
			summaryCell(
					formatter.format((overview.getEndDate().getTime() - overview.getStartDate().getTime()) / 1000.)
							+ " seconds",
					true);
			summaryCell(overview.getIncludedGroups());
			summaryCell(overview.getExcludedGroups());
			m_out.println("</tr>");
			m_testIndex++;
		}
	}
	if (qty_tests > 1) {
		m_out.println("<tr class=\"total\"><td>Total</td>");
		summaryCell(qty_pass_m, Integer.MAX_VALUE);
		summaryCell(qty_pass_s, Integer.MAX_VALUE);
		summaryCell(qty_skip, 0);
		summaryCell(qty_fail, 0);
		summaryCell(formatter.format((time_end - time_start) / 1000.) + " seconds", true);
		m_out.println("<td colspan=\"2\">&nbsp;</td></tr>");
	}
	m_out.println("</table>");
}
 
源代码8 项目: teamengine   文件: ReportLog.java
/**
 * Creates report logs that consists of test statics by extracting information from 
 * the Test suite results. These Report logs are then printed in the TestNG HTML reports.
 * 
 * @param suite is the test suite from which you want to extract test results information.
 */
public void generateLogs(ISuite suite) {
    Reporter.clear(); // clear output from previous test runs
    Reporter.log("The result of the test is-\n\n");

    //Following code gets the suite name
    String suiteName = suite.getName();
    //Getting the results for the said suite
    Map<String, ISuiteResult> suiteResults = suite.getResults();
    String input = null;
    String result;
    String failReport = null;
    String failReportConformance2=",";
    int passedTest = 0;
    int failedTest = 0;
    int skippedTest = 0;
    int finalPassedTest=0;
    int finalSkippedTest=0;
    int finalFailedTest=0;
    int count = 0;
    String date = null;
    for (ISuiteResult sr : suiteResults.values()) {
        count++;
        ITestContext tc = sr.getTestContext();
        DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
        Calendar cal = Calendar.getInstance();
        if (count == 1) {
            date = dateFormat.format(cal.getTime());
            input = tc.getAttribute("Input").toString();
            failReport = tc.getAttribute("TestResultReport").toString();
            passedTest = tc.getPassedTests().getAllResults().size();
            skippedTest = tc.getSkippedTests().getAllResults().size();
            failedTest = tc.getFailedTests().getAllResults().size();

        } else {
            int no_of_failedTest = tc.getFailedTests().getAllResults().size();
            int no_of_skippedTest = tc.getSkippedTests().getAllResults().size();
            int no_of_passedTest = tc.getPassedTests().getAllResults().size();
            if(no_of_failedTest!=0 || no_of_passedTest !=0)
            {
                if (no_of_failedTest == 0 && no_of_passedTest !=0 ) {
                failReportConformance2 = failReportConformance2+", "+input + " conform to the clause A." + count + " of "+suiteName;
            } else {
                    failReportConformance2 = failReportConformance2+", "+input + " does not conform to the clause A." + count + " of "+suiteName;
                
            }
            finalPassedTest = finalPassedTest + no_of_passedTest;
            finalSkippedTest = finalSkippedTest + no_of_skippedTest;
            finalFailedTest = finalFailedTest + no_of_failedTest;
        }
        }

    }
    failedTest+=finalFailedTest;
    skippedTest+=finalSkippedTest;
    passedTest+=finalPassedTest;
    if(failedTest>0){
      result="Fail";
    }else{
      result="Pass";
    }
    Reporter.log("**RESULT: " + result);
    Reporter.log("**INPUT: " + input);
    Reporter.log("**TEST NAME AND VERSION    :" + suiteName);
    Reporter.log("**DATE AND TIME PERFORMED  :" + date);
    Reporter.log("Passed tests for suite '" + suiteName
            + "' is:" + passedTest);

    Reporter.log("Failed tests for suite '" + suiteName
            + "' is:"
            + failedTest);

    Reporter.log("Skipped tests for suite '" + suiteName
            + "' is:"
            + skippedTest);
    Reporter.log("\nREASON:\n\n");
    Reporter.log(failReport);
    Reporter.log(failReportConformance2);

}
 
 方法所在类
 同类方法