Проект Maven: способен запускать отдельный тест отдельно с тестом TestNG, но не может запустить весь проект с тестом maven - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть Maven Project, и все настройки выполнены правильно, недавно я настроил проект с помощью GIT и Jenkins, Created Jenkin job.

Ранее я смог запустить весь проект с помощью Щелкните правой кнопкой мыши наProject и Run ** -> ** Run -> Maven test и выполнение теста используется для запуска, но теперь не выдает никакой ошибки, но не запускает браузер для выполнения.

Но если я запускаю файл java [Отдельный тестовый пример] отдельно, используя TestNG, он работает как положено [запускает браузер и запускает выполнение]

Поскольку я настроил с помощью Jenkins, я не могу запустить каждыйТестовый случай отдельно.Мне придется запустить проект с Maven test

Я испробовал возможные решения:

  1. Очистить проект + удалить папку m2 + Maven Run [просто чтобыубедитесь, что он не указывает ни на какие старые файлы jar] -> у меня не сработало

Пожалуйста, найдите фрагмент кода, который я использовал в pom.xml

<Code> </p>

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.19.1</version>
                <configuration>
                    <testFailureIgnore>true</testFailureIgnore>
                </configuration>
            </plugin>

            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                </configuration>
            </plugin>

            <plugin>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.7</version>
            </plugin>
        </plugins>
    </build>
</code>

Заранее благодарим за все предложения:)

Ответы [ 2 ]

0 голосов
/ 05 декабря 2018

Чтобы отследить причину, Вы можете выполнить следующие шаги.И вы найдете, где истинная причина, и она застрянет.

1.Создайте простой @Test с выводом на консоль:

public class NewTest {
  @Test
  public void f() {
      System.out.println("Hello World");
  }
}

2.Создайте TestNG.XML в корневом каталоге проекта для выполнения над классом:

<?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
    <suite name="Suite">
      <test thread-count="5" name="Test">
        <classes>
          <class name="packageName.NewTest"/>
        </classes>
      </test> <!-- Test -->
    </suite> <!-- Suite -->

3.Запустите и проверьте вывод TESTNG.XML

4.Запустите и проверьте вывод из POM.XML

POM.XML:

  <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.0</version>
            <configuration>
                <suiteXmlFiles> 
                    <suiteXmlFile>testng.xml</suiteXmlFile>
                </suiteXmlFiles>
            </configuration>
        </plugin>
  </plugins>
0 голосов
/ 04 декабря 2018
  1. создайте testNG xml и включите в него все тестовые классы.Это можно сделать, включив пакет верхнего уровня:

<test name="sample-Test" preserve-order="true" verbose="2">
    <packages>
        <package name="org.sample.something.*"/>
    </packages>
</test>

2.1 Обновите свою конфигурацию безошибочного плагина, сделав ее так:

        <configuration>
           <suiteXmlFiles>
               <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile>
           </suiteXmlFiles>
        </configuration>

2.2 ИЛИ (более гибкий, поскольку вы можете создавать разные профили, указывающие на разные xml, для отдельного запуска разных наборов тестов) Создайте профиль maven, который будет указывать на ваш testNG xml

     <profiles>
       <profile>
          <id>selenium-tests</id>
          <build>
             <plugins>
                <plugin>
                   <groupId>org.apache.maven.plugins</groupId>
                   <artifactId>maven-surefire-plugin</artifactId>
                   <version>2.19.1</version>
                   <configuration>
                      <suiteXmlFiles>
                         <suiteXmlFile>src/test/resources/testng.xml</suiteXmlFile>
                      </suiteXmlFiles>
                   </configuration>
                </plugin>     
             </plugins>
          </build>
       </profile>
    </profiles>
mvn clean test -U -Pselenium-tests ИЛИ mvn clean test

источник для maven

источник для xml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...