【问题标题】:Junit test cases for multiple dependent project in POM.xmlPOM.xml 中多个依赖项目的 Junit 测试用例
【发布时间】:2014-01-17 17:13:14
【问题描述】:

我有一个项目 Test-A,在这个项目中我有应用程序的 junit 测试类。 现在,我有另一个名为 Test-B 的项目,在这个项目中我有应用程序的 junit 测试类。

测试-B,我已经包含了项目-A,即修改了 POM.xml 并包含为:

POM.xml:

<dependency>
    <groupId>com.abc.test-A</groupId>
    <artifactId>TestA</artifactId>
    <version>1.7</version>
    <scope>test</scope>
</dependency> 

问题: 当我为 Test-B 项目运行 mvn test 时,这也必须运行 Test-A junit 测试文件。我怎样才能运行这种测试?

我是junit 4.9版本。

【问题讨论】:

    标签: maven junit maven-2 junit4


    【解决方案1】:

    您必须使用Maven Source Plugin 来打包测试源。

    这是一个构建插件在您安装部署项目时打包测试源的示例:

    <project>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <version>2.2.1</version>
            <executions>
              <execution>
                <id>attach-sources</id>
                <phase>verify</phase>
                <goals>
                  <goal>test-jar-no-fork</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </project>
    

    您必须将测试的依赖项添加为 test-jar 类型:

    <dependency>
      <groupId>com.abc.test-A</groupId>
      <artifactId>TestA</artifactId>
      <version>1.7</version>
      <type>test-jar</type>
      <scope>test</scope>
    </dependency>
    

    现在您可以从可以直接运行的工件 TestA 访问测试。

    【讨论】:

      【解决方案2】:

      为您的项目 B 运行测试不会运行任何依赖项的测试。例如,您的项目也将依赖于 junit。您不希望这些测试能够运行。

      【讨论】:

      • 我的要求是运行一个,即从项目 B 运行项目 A 的 Junit 测试用例。
      猜你喜欢
      • 2014-01-18
      • 2021-07-07
      • 2012-01-01
      • 2011-08-04
      • 2016-02-06
      • 2011-02-04
      • 2010-12-16
      相关资源
      最近更新 更多