我正在使用maven故障安全插件与cobertura插件一起执行集成测试用例。
在故障安全插件的配置中,我给了suiteXmlFile,其中包含所有集成测试
但是,当运行以下命令时,出现错误
命令是:mvn cobertura:cobertura-integration -DskipITs = false
错误是:
无法在项目xx上执行目标maven-failsafe-plugin:2.17:integration-test(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的依赖关系,但我仍然遇到依赖关系错误
请建议
问候
最佳答案
您需要采取另一种方式使消息已经存在。
<?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中,通常不需要一个。