protected static TestNG create(Path outputDir, Class<?>... testClasses) { TestNG result = create(testClasses); result.setOutputDirectory(outputDir.toAbsolutePath().toString()); return result; }
protected static TestNG create(Path outputDir, List<XmlSuite> suites) { TestNG result = create(suites); result.setOutputDirectory(outputDir.toAbsolutePath().toString()); return result; }
private static TestNG createTestNG(Path outputDir) { TestNG result = new TestNG(); result.setOutputDirectory(outputDir.toAbsolutePath().toString()); result.setVerbose(-1); return result; }
protected static TestNG run(TestNG result, Class<?>[] classes, String outputDir) { result.setVerbose(0); result.setOutputDirectory(outputDir); result.setTestClasses(classes); result.run(); return result; }
@Test public void testAfter() { TestNG tng = new TestNG(); tng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); tng.setTestClasses(new Class[] { TestAfter1.class, TestAfter2.class }); tng.setVerbose(0); tng.run(); Assert.assertEquals(BaseAfter.m_afterCount, 1); }
@BeforeMethod public void init() { m_tng = new TestNG(); m_tng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); m_tng.setVerbose(0); m_tng.setUseDefaultListeners(false); }
private void runTestViaRunMethod(IReporter reporter, String jvm) { String name = Long.toString(System.currentTimeMillis()); File output = createDirInTempDir(name); String filename = "report" + name + ".html"; if (jvm != null) { System.setProperty(jvm, filename); } TestNG testNG = create(); testNG.setOutputDirectory(output.getAbsolutePath()); if (reporter instanceof EmailableReporter2) { ((EmailableReporter2) reporter).setFileName(filename); } if (reporter instanceof EmailableReporter) { ((EmailableReporter) reporter).setFileName(filename); } testNG.addListener((ITestNGListener) reporter); testNG.setTestClasses(new Class[] {ReporterSample.class}); testNG.run(); if (jvm != null) { //reset the jvm argument if it was set System.setProperty(jvm, ""); } File actual = new File(output.getAbsolutePath(), filename); Assert.assertEquals(actual.exists(), true); }
@Test public void invocationOrder() { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = new TestNG(); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.setTestClasses(new Class[] {TestChild1.class, TestChild2.class}); testng.addListener(tla); testng.setVerbose(0); testng.run(); Assert.assertEquals(LOG.size(), 8, LOG.toString()); int number1 = "beforeTestChild1Class".equals(LOG.get(0)) ? 1 : 2; int number2 = number1 == 1 ? 2 : 1; verifyInvocation(number1, LOG, 0); verifyInvocation(number2, LOG, 4); }
@Test public void failedFile() throws ParserConfigurationException, SAXException, IOException { XmlSuite xmlSuite = createXmlSuite("Suite"); xmlSuite.getParameters().put("n", "42"); XmlTest xmlTest = createXmlTest(xmlSuite, "Test"); xmlTest.addParameter("o", "43"); XmlClass xmlClass = createXmlClass(xmlTest, SimpleFailedSample.class); xmlClass.getLocalParameters().put("p", "44"); TestNG tng = create(xmlSuite); Path temp = Files.createTempDirectory("tmp"); tng.setOutputDirectory(temp.toAbsolutePath().toString()); tng.addListener((ITestNGListener) new FailedReporter()); tng.run(); Collection<XmlSuite> failedSuites = new Parser(temp.resolve(FailedReporter.TESTNG_FAILED_XML).toAbsolutePath().toString()).parse(); XmlSuite failedSuite = failedSuites.iterator().next(); Assert.assertEquals("42", failedSuite.getParameter("n")); XmlTest failedTest = failedSuite.getTests().get(0); Assert.assertEquals("43", failedTest.getParameter("o")); XmlClass failedClass = failedTest.getClasses().get(0); Assert.assertEquals("44", failedClass.getAllParameters().get("p")); } }
@Test public void withoutAlwaysRunAfter() { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = create(); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.setTestClasses(new Class[] {AlwaysRunAfter2.class}); testng.addListener(tla); testng.run(); assertTrue(AlwaysRunAfter2.success(), "afterTestMethod should not have run"); }
setVerbose(cla.verbose); setOutputDirectory(cla.outputDirectory); setOutputDirectory(cla.outputDirectory);
@Test public void withAlwaysRunAfterMethod() { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = create(); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.setTestClasses(new Class[] {AlwaysRunAfter3.class}); testng.addListener(tla); testng.run(); assertTrue(AlwaysRunAfter3.success(), "afterMethod should have run"); }
tng.setOutputDirectory(temp.toAbsolutePath().toString()); tng.addListener(new FailedReporter()); tng.run();
@Test public void withAlwaysRunAfter() { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = create(); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.setTestClasses(new Class[] {AlwaysRunAfter1.class}); testng.addListener(tla); testng.run(); assertTrue(AlwaysRunAfter1.success(), "afterTestMethod should have run"); }
@Test public void withoutAlwaysRunBefore() { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = create(); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.setTestClasses(new Class[] {AlwaysRunBefore1.class}); testng.setGroups("A"); testng.addListener(tla); testng.run(); assertTrue(AlwaysRunBefore1.success(), "before alwaysRun methods should have been run"); } }
setVerbose(cla.verbose); setOutputDirectory(cla.outputDirectory); setOutputDirectory(cla.outputDirectory);
private static void runTest(Class<?>... classes) { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = create(classes); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.addListener(tla); testng.setVerbose(0); testng.run(); }
@Test(dataProvider = "dp") public void confFailureTest( Class[] classesUnderTest, int configurationFailures, int configurationSkips, int skippedTests) { TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = new TestNG(); testng.setOutputDirectory(OutputDirectoryPatch.getOutputDirectory()); testng.setTestClasses(classesUnderTest); testng.addListener(tla); testng.setVerbose(0); testng.setConfigFailurePolicy(XmlSuite.FailurePolicy.CONTINUE); testng.run(); verify(tla, configurationFailures, configurationSkips, skippedTests); }
TestListenerAdapter tla = new TestListenerAdapter(); TestNG testng = new TestNG(); testng.setOutputDirectory("your_directory_here") testng.setTestClasses(new Class[] { Run2.class }); testng.addListener(tla); testng.run();
@Override public boolean runUnitTests() { TestNG testNG = new TestNG(); setXmlSuitePath(testNG); if (configuration.getTestSuite().getOutputDirectory() != null) { testNG.setOutputDirectory(configuration.getTestSuite().getOutputDirectory()); } testNG.run(); return !(testNG.hasFailure() || testNG.hasSkip()); }