在通过maven运行Selify测试时,它会自动跳过我的一个测试,并很好地运行其他测试。不确定为什么bcos的默认行为是maven不跳过测试。尽管添加了<skipTests>false</skipTests>
,但仍然没有解决问题。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite verbose="1" name="BudgetPlus">
<test name="seleniumTests">
<classes>
<class name="tests.reportMultipleTests" />
<class name="tests.addProposalMaxValuesTest" />
<class name="tests.addProposalMinValuesTest" />
<class name="tests.addProposalValuesTest" />
<class name="tests.addProposalValuesTest1" />
<class name="tests.LoginTest" />
<class name="tests.InvalidLoginTest" />
</classes>
</test>
</suite>
因此,在上面的代码片段中,它总是跳过第一个测试“tests.reportMultipleTest”,如果我删除其他剩余的测试,只保留这个“tests.reportMultipleTest”,它会成功地识别并运行测试,但如果有多个测试,它就会跳过它。运行所有测试后,跳过计数也为0。这是一个奇怪的问题,不确定如何解决它。我还升级了maven的版本TestNG,执行了全新安装,删除了.m2repo并再次运行了构建,但都不起作用。有没有人遇到过类似的问题?
这是我的Maven个人资料:
<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>
<groupId>BudgetPlus</groupId>
<artifactId>BudgetPlus</artifactId>
<version>0.0.1-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>3.11.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-chrome-driver</artifactId>
<version>3.11.0</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-server</artifactId>
<version>3.11.0</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.14.3</version>
<scope>compile</scope>
</dependency>
</dependencies>
<build>
<sourceDirectory>src/test/java</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.6.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.21.0</version>
<configuration>
<skipTests>false</skipTests>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.21.0</version>
<configuration>
<skipITs>false</skipITs>
</configuration>
</plugin>
</plugins>
</build>
</project>
3条答案
按热度按时间wz3gfoph1#
我使用的是maven,使用eclipse IDE for Java。如果你点击右击项目并选择运行方式->选择配置->然后你会发现跳过测试复选框。根据您的要求选中或取消选中。
4uqofj5v2#
出现问题的测试“test.reportMultipleTest”有多个子测试,优先级设置为1、2、3等。而其他测试类(Tests.addProposalMaxValuesTest、Tests.addProposalMinValuesTest)没有设置优先级。我去掉了优先部分,这就解决了!
j0pj023g3#
这是maven param**-DskipTest=true**
MVN全新安装-DskipTests值=TRUE;