我正在尝试使用testng.xml运行项目中的所有测试 我有80个班级,提供约140个测试,但每次运行test时,testng仅运行83/140个测试。 我试图在未执行但找不到任何测试的测试中找到模式。
所有测试/类文件都在“脚本”包下,并且所有类文件都具有:
package scripts;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
所有测试均带有@Test
注释(即有140个@Test
标签)
@Test(priority=1,testName="",description="")
我没有在enabled="false"
批注中使用@Test
我的testng.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Regression">
<test name="Regression">
<packages>
<package name="scripts"/>
</packages>
</test>
</suite>
注意:此处出于某种原因跳过了约57个测试。例如其中之一是addMsd
如果我添加一个附加参数并添加一个测试(通常会被上述XML跳过),那么它将成功执行:
`<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Regression">
<test name="Regression">
<packages>
<package name="scripts"/>
</packages>
</test>
<test name="test">
<classes>
<class name="scripts.CalculateMSD">
<methods><include name="addMsd"/></methods>
</class>
</classes>
</test>
</suite>`
在这里,addMsd将成功执行(在第一个xml中将被跳过)
我尝试使用IntelliJ testng插件(右键单击>运行)和maven surefire插件运行测试,并且在两种方法中观察到相同的行为。
我不知道XML或项目设置有什么问题。任何指针都会有所帮助!