반응형

메이븐 빌드 중 테스트 단계에서 다음과 같은 에러가 발생하였다.

Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test (default-test) on project java8-test: groups/excludedGroups require TestNG or JUunit48+ on project test classpath

 

해당 오류가 발생했을 때, pom.xml 설정은 다음과 같았다.

<?xml version="1.0" encoding="UTF-8"?>

<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>me.devhistory</groupId>
  <artifactId>java8-test</artifactId>
  <version>1.0-SNAPSHOT</version>

  <name>java8-test</name>
  <url>http://www.example.com</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <version>5.5.2</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <profiles>
    <profile>
      <id>default</id>
      <activation>
          <activeByDefault>true</activeByDefault>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <groups>fast</groups>
              <excludedGroups>slow</excludedGroups>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>ci</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <configuration>
              <groups>fast | slow</groups>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>

 

설정을 확인해보면 maven-surefire-plugin 버전이 명시되어 있지 않은데 Junit5를 사용하기 위해서는 알맞은 버전을 설정해주어야 한다. 에러가 발생했을 당시의 버전은 2.12.4로 사용하고 있었다.

<plugins>
   <plugin>
      <artifactId>maven-surefire-plugin</artifactId>
      <version>2.22.2</version>
   </plugin>
</plugins>

maven-surefire-plugin 버전을 2.22.2 버전으로 변경하고나서 테스트 단계에서 정상적으로 동작하는 것을 확인하였다.

 

· mvn -P default test

 

· mvn -P ci test


[참고자료]

https://www.arhohuttunen.com/junit-5-maven-example/

반응형

+ Recent posts