Как я могу сделать объект testng запустить список классов в Java и сделать страницу reportNG?
Я хочу сделать пользовательский отчет, используя testng + reportNG(оба установлены)
Я пишу Java-файл для запуска выбранных классов, я использую API-интерфейс testNG, но не могу понять, как вызвать его методы и сделать свой собственный набор
У меня уже есть XML-файл, который выполняет все восемь тестов Java - suite_basic_links_working.xml Я хочу научиться писать Java, а не XML-файл для запуска того же набора!
public class Suite_runner_tets_links {
TestNG suite_for_testing_links ;
@Test
public void main() {
suite_for_testing_links.setDefaultSuiteName("NAIMI.KZ selenium + testng report ");
List <> some_classes_to_run[] = new ArrayList();
some_classes_to_run.add("C:\\Users\\www\\ERJAN_NAIMIKZ_ALL\\erjan_2_naimikz_test\\erjan\\testNG\\links_test\\Onas_url_click_test.java");
some_classes_to_run.add("C:\\Users\\www\\ERJAN_NAIMIKZ_ALL\\erjan_2_naimikz_test\\erjan\\testNG\\links_test\\Podbo_specialista_url_click_test.java");
suite_for_testing_links.setTestClasses(some_classes_to_run);
suite_for_testing_links.run();
/*
TestNG tng = new TestNG();
List suites = Lists.newArrayList();
suites.add("c:/tests/testng1.xml");
suites.add("c:/tests/testng2.xml");
tng.setTestSuites(suites);
tng.run();*/
}
@BeforeSuite
public void beforeSuite() {
suite_for_testing_links = new TestNG();
System.out.println("here!!! "+suite_for_testing_links.getOutputDirectory()) ;
suite_for_testing_links.setOutputDirectory("C:\\Users\\www\\ERJAN_NAIMIKZ_ALL\\erjan_2_naimikz_test\\erjan_custom_testng_report");
}
@AfterSuite
public void afterSuite() {
}
это мой каталог в eclipse, я хочу запустить 2 теста - тест blog_url_click_test.java и logo_url_clik.
1 ответ
Посмотрите на сайте проекта TestNG. http://testng.org/doc/documentation-main.html Вы можете легко найти пример @Factory, где вы можете поместить весь свой тестовый класс в один метод, а затем просто запустить его.
public class WebTestFactory {
@Factory
public Object[] createInstances() {
Object[] result = new Object[10];
for (int i = 0; i < 10; i++) {
result[i] = new WebTest(i * 10);
}
return result;
}
}
Когда вы запускаете этот код, вы должны заметить, что инициализация объектов происходит случайным образом. И если вы хотите создать некоторую иерархию, вам нужно прочитать, например, эту тему. Как заказать выполнение FactoryTG Factory при наличии одного метода тестирования и сортируемых тестовых данных?