Тестовые случаи в TestNG не выполняются maven - PullRequest
0 голосов
/ 09 января 2020

У меня есть проект maven со сценарием testng, как показано ниже:

package TestMaven;

import static org.testng.Assert.assertEquals;

import org.testng.annotations.Test;

public class mavenTestDemo {

@Test
public void add() {
    System.out.println("Addintion");
    int a=10;
    int b=20;
    assertEquals(30, a+b);
}

@Test
public void sub() {
    System.out.println("Subtraction");
    int a=10;
    int b=20;
    assertEquals(10, b-a);
}

@Test
public void mult() {
    System.out.println("Multiplication");
    int a=10;
    int b=20;
    assertEquals(200, a*b);
}


}

Pom. xml следующим образом:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>MavenDemo</groupId>
  <artifactId>MavenDemo</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>MavenDemo</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

 </properties>
  <dependencies>
     <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>3.141.59</version>
        </dependency>

        <dependency>
            <groupId>org.testng</groupId>
            <artifactId>testng</artifactId>
            <version>7.0.0</version>
            <scope>compile</scope>
        </dependency>


  </dependencies>
</project>

когда я выполняю код через maven, я получаю следующее Вывод: я выполнял напрямую из Eclipse, используя опцию «maven test», а также пробовал из командной строки с помощью команды «mvn clean install». Для обоих исполнений я получаю результат ниже --->

[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------------< MavenDemo:MavenDemo >-------------------------
[INFO] Building MavenDemo 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ MavenDemo ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\Users\Shilpa Khandge\eclipse-workspace\MavenDemo\src\main\resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ MavenDemo ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ MavenDemo ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory C:\Users\Shilpa Khandge\eclipse-workspace\MavenDemo\src\test\resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ MavenDemo ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ MavenDemo ---
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.900 s
[INFO] Finished at: 2020-01-09T14:33:56+05:30
[INFO] ------------------------------------------------------------------------

Ответы [ 3 ]

0 голосов
/ 09 января 2020

Пожалуйста, добавьте плагин maven surefire в ваш pom. xml, который должен указывать на testng. xml

<plugins>

 <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.0.0-M4</version>
        <configuration>
          <suiteXmlFiles>
            <suiteXmlFile>testng.xml</suiteXmlFile>
          </suiteXmlFiles>
        </configuration>
      </plugin>

</plugins>

Затем запустите mvn install

0 голосов
/ 09 января 2020

Чтобы TestNg распознал методы @Test, имя класса должно заканчиваться на Test.

В вашем случае переименуйте имя класса с mavenTestDemo на MavenTest или любое другое имя, заканчивающееся на Test.

В противном случае вам необходим файл testng. xml, включающий классы тестирования.

0 голосов
/ 09 января 2020

Вам нужно иметь Testng. xml, определить класс теста и запустить его повторно, запустив mvn clean install. убедитесь, что вы определили testng. xml в pom. xml верный плагин. так что maven вызывает ваш testng. xml, а затем, в свою очередь, указывает на методы тестирования.

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