Автор оригинала: Pankaj Kumar.
Тестовые тесты выполняются автоматически, когда мы создаем проект maven. Мы также можем запускать тесты TestNG с помощью плагина Eclipse. Что делать, если у нас не установлен плагин TestNG для нашей ИДЕИ, и мы хотим выполнить некоторые конкретные тесты без полной сборки. В этом случае мы также можем запускать тестовые классы TestNG из основного метода java.
Тестирование Тест из основного метода Java
Давайте создадим простой тестовый класс TestNG и прослушиватель TestNG для нашего примера.
package com.journaldev.main; import org.testng.annotations.Test; public class Test5 { @Test public void test() { System.out.println("Running test method"); } }
package com.journaldev.main; import org.testng.ISuite; import org.testng.ISuiteListener; public class Test5SuiteListener implements ISuiteListener { @Override public void onStart(ISuite suite) { System.out.println("TestNG suite default output directory = "+suite.getOutputDirectory()); } @Override public void onFinish(ISuite suite) { System.out.println("TestNG invoked methods = " +suite.getAllInvokedMethods()); } }
Теперь мы хотим запустить Тест 5
тесты класса, а также добавить Testsuitelistener
прослушиватель в ваш набор тестов TestNG. Мы можем легко сделать это с помощью org.testng.TestNG
Класс.
package com.journaldev.main; import org.testng.TestNG; public class TestNGMainClass { public static void main(String[] args) { TestNG testSuite = new TestNG(); testSuite.setTestClasses(new Class[] { Test5.class }); testSuite.addListener(new Test5SuiteListener()); testSuite.setDefaultSuiteName("My Test Suite"); testSuite.setDefaultTestName("My Test"); testSuite.setOutputDirectory("/Users/pankaj/temp/testng-output"); testSuite.run(); } }
Обратите внимание, что я также изменяю каталог вывода отчетов о тестировании, устанавливаю набор тестов и имя теста.
Просто запустите вышеуказанный класс как java-приложение, и оно должно выдать следующий вывод в консоли.
TestNG suite default output directory = /Users/pankaj/temp/testng-output/My Test Suite Running test method TestNG invoked methods = [Test5.test()[pri:0, instance:com.journaldev.main.Test5@314c508a] 827084938] =============================================== My Test Suite Total tests run: 1, Failures: 0, Skips: 0 ===============================================
Вы также должны проверить наличие HTML-отчета, сгенерированного вышеуказанной программой, он будет выглядеть примерно так, как показано ниже.
Это все для запуска тестов TestNG из основного метода java.