将Groovy测试添加到Java Maven项目

时间:2015-05-28 10:37:58

标签: java maven groovy

我一直在我的Groovy脚本中使用Jsoup来解析html页面。该脚本包含使用葡萄的Jsoup库。

但是,我遇到了一个bug,想要修复它。我能够在Groovy脚本中重复该错误。我试图通过在项目中添加Java测试来复制错误,但是测试通过了,我无法获得任何有用的信息。

我想通过在Groovy中编写测试来复制项目中的错误。但是,我不确定我需要对pom.xml进行哪些更改才能包含和运行Groovy测试。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

我使用的方法是将GMavenPlus包含在项目中。第一步涉及对pom.xml进行必要的更改。因此,请将以下内容添加到<plugins>部分:

<plugin>
    <groupId>org.codehaus.gmavenplus</groupId>
    <artifactId>gmavenplus-plugin</artifactId>
    <version>1.5</version>
    <executions>
        <execution>
            <goals>
                <goal>addSources</goal>
                <goal>addTestSources</goal>
                <goal>compile</goal>
                <goal>testCompile</goal>
            </goals>
        </execution>
    </executions>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
    <!-- if including source jars, use the no-fork goals
       otherwise both the Groovy sources and Java stub sources will get included in your jar -->
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-source-plugin</artifactId>
    <!-- source plugin \> = 2.1 is required to use the no-fork goals -->
    <version>2.4</version>
    <executions>
        <execution>
            <id>attach-sources</id>
            <goals>
                <goal>jar-no-fork</goal>
                <goal>test-jar-no-fork</goal>
            </goals>
        </execution>
    </executions>
</plugin>

接下来将以下内容添加到<dependencies>部分:

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

接下来,所有人都创建相应的测试目录和测试类:

mkdir src/test/groovy
mkdir -p src/test/groovy/org/jsoup/integration
touch src/test/groovy/org/jsoup/integration/GroovyTest.groovy

然后我将测试添加到GroovyTest.groovy并且我能够执行测试。