gmaven тест не найден - PullRequest
       21

gmaven тест не найден

3 голосов
/ 05 октября 2010

Привет, я столкнулся с какой-то ошибкой. У меня действительно небольшой проект в Groovy.Я хочу использовать Maven.Я смог скомпилировать свои файлы, исходный код и тест (у меня есть .class в целевой папке).Но ни один тест не выполняется.вот мой файл pom.

<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>gmedia</groupId>
<artifactId>gmedia.api</artifactId>
<name>Gmedia API project</name>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<properties>
  <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>

<dependencies>
  <dependency>
    <groupId>org.codehaus.groovy</groupId>
    <artifactId>groovy-all</artifactId>
    <version>1.7.1</version>
    </dependency>

  <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.8.2</version>
        <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>net.sf.json-lib</groupId>
      <artifactId>json-lib</artifactId>
      <version>2.2.3</version>
      <classifier>jdk15</classifier>
    </dependency>

    <dependency>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>eclipselink</artifactId>
        <version>2.0.2</version>
    </dependency>

    <dependency>
        <groupId>org.eclipse.persistence</groupId>
        <artifactId>javax.persistence</artifactId>
        <version>2.0.0</version>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.groovy.maven</groupId>
            <artifactId>gmaven-plugin</artifactId>
            <version>1.0-rc-5</version>
            <executions>
                <execution>
                    <goals>
                      <!--<goal>generateStubs</goal>-->
                      <goal>compile</goal>
                      <!--<goal>generateTestStubs</goal>-->
                      <goal>testCompile</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.0.2</version>
            <configuration>
                <source>1.6</source>
                <target>1.6</target>
            </configuration>
        </plugin>
    </plugins>
</build>
<repositories>
    <repository>
        <url>http://ftp.ing.umu.se/mirror/eclipse/rt/eclipselink/maven.repo</url>
        <id>eclipselink</id>
        <layout>default</layout>
        <name>Repository for library Library[eclipselink]</name>
    </repository>
</repositories>

Мои файлы groovy находятся в src / groovy и test / groovy

Что я делаю неправильно?

Кстати, я получаю ошибки компиляции, когда я добавляю эту конфигурацию:

<configuration>
    <sources>
        <fileset>
            <directory>${pom.basedir}/src/test/groovy</directory>
            <includes>
                <include>**/*.groovy</include>
            </includes>
        </fileset>
    </sources>
</configuration>

скомпилируйте мой файл с ошибкой при добавлении его в groovy-maven-plugin

<configuration>
          <sources>
            <fileset>
              <directory>${pom.basedir}/src/test/groovy</directory>
              <includes>
                <include>**/*.groovy</include>
              </includes>
            </fileset>
          </sources>
        </configuration>

1 Ответ

4 голосов
/ 06 октября 2010

Ну, во-первых, вы используете устаревшую версию GMaven.

Плагин перемещен в групповой идентификатор org.codehaus.gmaven, и текущая версия 1.3:

<plugin>
    <groupId>org.codehaus.gmaven</groupId>
    <artifactId>gmaven-plugin</artifactId>
    <version>1.3</version>
    <executions>
        <execution>
            <goals>
                <goal>generateStubs</goal>
                <goal>compile</goal>
                <goal>generateTestStubs</goal>
                <goal>testCompile</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Кроме того, вам, вероятно, нужно поддерживать активные цели заглушки для JUnit, чтобы найти тестовые классы.

См. Эту страницу для справки: Создание Groovy-проектов с GMaven

Обновление:

Если я определю тест для запуска, он запустится. но просто mvn чистый тест, тест скомпилировано, но не выполнено

Похоже, вы не соблюдаете соглашения об именах для тестовых классов.

См. Первый раздел этой страницы: Включения и исключения из тестов

...