在通过maven运行selenium测试时,它会自动跳过我的一个测试并运行其他测试。不知道为什么maven的bcos默认行为不会跳过测试。尽管添加<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>
所以在上面的代码片段中,它总是会跳过第一个测试&#34; tests.reportMultipleTests&#34; ,如果我删除其他剩余的测试,并保持这个&#34; tests.reportMultipleTests&#34;,它会成功识别并运行测试,但是如果有多个测试则会跳过它。运行所有测试后,跳过计数也为0.这是一个奇怪的问题,不知道如何解决它。我还升级了maven,testng的版本,做了一个干净的安装,删除了.m2 repo并再次运行了构建,但没有任何效果。有没有人遇到类似的问题?
这是我的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>
答案 0 :(得分:0)
我使用maclipse使用eclipse IDE for java。如果单击右键单击项目并选择run as - &gt;选择配置 - &gt;然后你会发现跳过测试复选框。根据您的要求检查或取消选中。
答案 1 :(得分:0)
这是maven param -DskipTests = true
mvn clean instal -DskipTests = true;
答案 2 :(得分:0)
测试&#34; test.reportMultipleTests&#34;给出问题的是多个子测试,优先级设置为1,2,3等。而其他测试类(tests.addProposalMaxValuesTest,tests.addProposalMinValuesTest)没有设置优先级。我删除了优先级部分并解决了!