testng.xml不会选择/执行所有测试

时间:2019-02-18 21:52:57

标签: java testng testng.xml

我正在尝试使用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

  1. 对于某些类,如果一个类有3个测试,则仅执行2个
  2. 对于某些类,将跳过整个类文件(具有单个或多个测试)

如果我添加一个附加参数并添加一个测试(通常会被上述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或项目设置有什么问题。任何指针都会有所帮助!

0 个答案:

没有答案