Как я могу сделать объект 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 при наличии одного метода тестирования и сортируемых тестовых данных?

Другие вопросы по тегам