执行目标mvn-failsafe-plugin :( failsafe-integration-tests)项目x:已配置suiteXmlFiles,但没有TestNG依赖项

时间:2014-10-07 10:04:09

标签: java maven

我正在使用maven failsafe插件来执行集成测试用例以及cobertura插件。 在failafe插件的配置中,我给出了suiteXmlFile,它具有所有的集成测试 但是,当运行以下命令时,我收到错误 命令是:mvn cobertura:cobertura-integration -DskipITs = false 错误是:

无法执行目标maven-failsafe-plugin:2.17:项目xx上的集成测试(failsafe-integration-tests):已配置suiteXmlFiles,但没有TestNG依赖

这是pom.xml的片段

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-failsafe-plugin</artifactId>
  <version>2.17</version>
  <configuration>
    <suiteXmlFiles>
      <suiteXmlFile>/home/adam/coberturaint/reporting/src/test/resources/testng/it-test.xml</suiteXmlFile>
    </suiteXmlFiles>
    <dependencyManagement>
      <dependencies>
        <dependency>
          <groupId>org.testng</groupId>
          <artifactId>testng</artifactId>
          <version>6.8.8</version>
        </dependency>
      </dependencies>
    </dependencyManagement>

  </configuration>
  <dependencies>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>6.8.8</version>
    </dependency>
  </dependencies>

</plugin>

我正在使用故障安全插件版本:2.17

我已经提到了各地的testng的依赖性,但我仍然得到依赖性错误 请建议

问候

1 个答案:

答案 0 :(得分:1)

你需要以不同的方式导致它已经发出消息。

<?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>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>6.8.8</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>


  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>2.17</version>
          <configuration>
            <suiteXmlFiles>
              <suiteXmlFile>/home/adam/coberturaint/reporting/src/test/resources/testng/it-test.xml</suiteXmlFile>
            </suiteXmlFiles>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

</project>

除此之外,您需要像这样调用maven:

mvn verify

运行集成测试阶段。如果你像这样打电话给Maven:

mvn cobertura:cobertura-integration 

您没有生命周期,无法进行集成测试。

您应该像处理套件文件一样阻止在pom文件中使用绝对路径。另一方面,问题是你需要一个套件文件。在TestNG中,您通常不需要一个。