/** @return As many parameters as the name of the included group */ @DataProvider(name = "testContext") public Object[] createContext(ITestContext ctx) { String[] groups = ctx.getIncludedGroups(); int n = groups.length > 0 ? new Integer(groups[0]) : 0; Object[] result = new Object[n]; for (int i = 0; i < n; i++) { result[i] = "foo"; } return new Object[] {result}; }
.append(" ms)</td>\n") .append("</tr><tr>\n") .append("<td>Included groups:</td><td>").append(arrayToString(testContext.getIncludedGroups())).append("</td>\n") .append("</tr><tr>\n") .append("<td>Excluded groups:</td><td>").append(arrayToString(testContext.getExcludedGroups())).append("</td>\n")
.append("</tr><tr>\n") .append("<td>Included groups:</td><td>") .append(arrayToString(testContext.getIncludedGroups())) .append("</td>\n") .append("</tr><tr>\n")
(overview.getEndDate().getTime() - overview.getStartDate().getTime()) / 1000.) + " seconds", true); summaryCell(overview.getIncludedGroups()); summaryCell(overview.getExcludedGroups()); m_out.println("</tr>");
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()); }
+ " seconds", true); summaryCell(overview.getIncludedGroups()); summaryCell(overview.getExcludedGroups()); m_out.println("</tr>");
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()); }
@DataProvider(name = "myDataProvider") public Object[][] testDataProvider(ITestContext context) { List<String> includedGroups = Arrays.asList(context.getIncludedGroups()); if(includedGroups.contains("myGroup")) { return dataA; } else if (includedGroups.contains("myOtherGroup")) { return dataBC; } //... }
/** * Checks if the given test method is part of the current test run in matters of the include/exclude group filtering */ private boolean isInActiveGroup(ITestNGMethod method, ITestContext context) { String[] includedGroupsArray = context.getIncludedGroups(); List<String> includeGroups = includedGroupsArray != null ? asList(includedGroupsArray) : Collections.<String>emptyList(); String[] excludedGroupsArray = context.getExcludedGroups(); List<String> excludeGroups = excludedGroupsArray != null ? asList(excludedGroupsArray) : Collections.<String>emptyList(); if (includeGroups.isEmpty()) { if (excludeGroups.isEmpty()) { return true; // no group restriction } else { return isInActiveGroupWithoutIncludes(method, excludeGroups); } } else { return isInActiveGroupWithIncludes(method, includeGroups, excludeGroups); } }
@Override public void onStart(ITestContext context) { Logger logger = getLogger(); logger.debug("Starting tests"); if (logger.isDebugEnabled()) { logger.trace("host: " + context.getHost()); logger.trace("suite name: " + context.getSuite().getName()); logger.trace("parallel: " + context.getSuite().getParallel()); logger.trace("included groups: " + StringUtils.join(context.getIncludedGroups(), ", ")); logger.trace("excluded groups: " + StringUtils.join(context.getExcludedGroups(), ", ")); } if (logger.isTraceEnabled()) { ISuite suite = context.getSuite(); XmlSuite xmlSuite = suite.getXmlSuite(); logger.trace("thread count: " + xmlSuite.getThreadCount()); logger.trace("data provider thread count: " + xmlSuite.getDataProviderThreadCount()); logger.trace("methods: " + StringUtils.join(suite.getAllMethods(), ", ")); logger.trace("excluded methods: " + StringUtils.join(suite.getExcludedMethods(), ", ")); Set<Entry<String, String>> allParameters = xmlSuite.getAllParameters().entrySet(); for (Entry<String, String> entry : allParameters) { logger.trace(entry.getKey() + "='" + entry.getValue() + "'"); } } }
@Override public void onStart(ITestContext context) { Logger logger = getLogger(); logger.debug("Starting tests"); if (logger.isDebugEnabled()) { logger.trace("host: " + context.getHost()); logger.trace("suite name: " + context.getSuite().getName()); logger.trace("parallel: " + context.getSuite().getParallel()); logger.trace("included groups: " + StringUtils.join(context.getIncludedGroups(), ", ")); logger.trace("excluded groups: " + StringUtils.join(context.getExcludedGroups(), ", ")); } if (logger.isTraceEnabled()) { ISuite suite = context.getSuite(); XmlSuite xmlSuite = suite.getXmlSuite(); logger.trace("thread count: " + xmlSuite.getThreadCount()); logger.trace("data provider thread count: " + xmlSuite.getDataProviderThreadCount()); logger.trace("methods: " + StringUtils.join(suite.getAllMethods(), ", ")); logger.trace("excluded methods: " + StringUtils.join(suite.getExcludedMethods(), ", ")); Set<Entry<String, String>> allParameters = xmlSuite.getAllParameters().entrySet(); for (Entry<String, String> entry : allParameters) { logger.trace(entry.getKey() + "='" + entry.getValue() + "'"); } } }
@Override public void onStart(ITestContext testContext) { super.onStart(testContext); TEST_RESOURCE_LOG.info("BrooklynLeakListener.onStart attempting to terminate all extant ManagementContexts: " + "name=" + testContext.getName() + "; includedGroups="+Arrays.toString(testContext.getIncludedGroups()) + "; excludedGroups="+Arrays.toString(testContext.getExcludedGroups()) + "; suiteName="+testContext.getSuite().getName() + "; outDir="+testContext.getOutputDirectory()); tryTerminateAll(); }
@Override public void onFinish(ITestContext testContext) { super.onFinish(testContext); TEST_RESOURCE_LOG.info("BrooklynLeakListener.onFinish attempting to terminate all extant ManagementContexts: " + "name=" + testContext.getName() + "; includedGroups="+Arrays.toString(testContext.getIncludedGroups()) + "; excludedGroups="+Arrays.toString(testContext.getExcludedGroups()) + "; suiteName="+testContext.getSuite().getName() + "; outDir="+testContext.getOutputDirectory()); tryTerminateAll(); }
+ "; includedGroups="+Arrays.toString(testContext.getIncludedGroups()) + "; excludedGroups="+Arrays.toString(testContext.getExcludedGroups()) + "; suiteName="+testContext.getSuite().getName()
/** * Runs tasks after test suite. * @param testContext the test context. */ @AfterSuite(alwaysRun = true) public void afterSuite(ITestContext testContext) { if (citrus != null) { citrus.afterSuite(testContext.getSuite().getName(), testContext.getIncludedGroups()); } }
/** * Runs tasks before test suite. * @param testContext the test context. * @throws Exception on error. */ @BeforeSuite(alwaysRun = true) public void beforeSuite(ITestContext testContext) throws Exception { springTestContextPrepareTestInstance(); Assert.notNull(applicationContext); citrus = Citrus.newInstance(applicationContext); citrus.beforeSuite(testContext.getSuite().getName(), testContext.getIncludedGroups()); }
private void displayGroupsInfo(List<ISuite> suite) throws IOException { for (ISuite testSuite : suite) { Map<String, ISuiteResult> tests = testSuite.getResults(); for (ISuiteResult results : tests.values()) { ITestContext overview = results.getTestContext(); String[] excluded = overview.getExcludedGroups(); String[] included = overview.getIncludedGroups(); generateList(included, "Included Groups for " + testSuite.getName()); generateList(excluded, "Excluded Groups for " + testSuite.getName()); } } }