1

我有一个依赖于测试项目的 Maven 项目。我想在这个项目上运行 testNG:

<groupId>com.myGroup</groupId>
<artifactId>assembly</artifactId>
<version>1.0.0-SNAPSHOT</version>

<dependencies>
    <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>6.4</version>
    </dependency>
    <dependency>
        <groupId>com.myGroup</groupId>
        <artifactId>myArtifact</artifactId>
        <version>1.0.0-SNAPSHOT</version>
        <type>test-jar</type>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.12.4</version>
            <configuration>
            <test>MyTest</test>
                <suiteXmlFiles>
                    <suiteXmlFile>test-suites/all-test.xml</suiteXmlFile>
                </suiteXmlFiles>
            </configuration>
        </plugin>
    </plugins>
</build>

但是当我在上面的项目上运行mvn clean install时没有任何反应。是否可以设置 maven-surefire-plugin 以在例如上运行 testNG。二进制依赖?

编辑:

这个:

http://softwaremavens.blogspot.dk/2009/09/running-tests-from-maven-test-jar-in.html

似乎是正确的。如果可以直接从依赖项中运行代码而不必解压缩它,那就太好了。

4

2 回答 2

0

现在可以使用 Maven Surefire v2.15。只需将以下类型的配置添加到 surefire 插件中:

<build>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>2.15</version>
    <configuration>
      <dependenciesToScan>
        <dependency>com.group.id:my-artifact</dependency>
        <dependency>com.group.id:my-other-artifact</dependency>
      </dependenciesToScan>
      ...
    </configuration>
    ...
  </plugin>
  ...
</build>

您还应该在依赖项部分声明实际的依赖项:

<dependencies>
  <dependency>
    <groupId>com.group.id</groupId>
    <artifactId>my-artifact</artifactId>
    <type>test-jar</type>
    <version>1.1</version>
    <scope>test</scope>
  </dependency>
  <dependency>
    <groupId>com.group.id</groupId>
    <artifactId>my-other-artifact</artifactId>
    <type>test-jar</type>
    <version>1.1</version>
    <scope>test</scope>
  </dependency>
</dependencies>
于 2013-06-11T10:30:37.983 回答
0

乍一看,我在您的 pom.xml 中看不到任何缺陷。

请参考1我认为这就是您要生成和执行测试二进制文件的内容。

1 . http://dharshanaw.blogspot.com/2012/10/how-to-execute-testng-tests-in-side.html

于 2012-12-13T23:42:27.960 回答