TestNG:使用<;套件文件>;标签

TestNG:使用<;套件文件>;标签,testng,suite,Testng,Suite,我正在尝试从一个整体套件文件运行多个套件。我定义了需要运行的套件,并运行“主”套件文件。我使用preserve order按顺序运行每个套件,但其行为与我预期的不同。它似乎一个接一个地、几乎平行地将它们分开 有人知道我如何执行这些套件,保持顺序,最好等到第一个套件完成,然后再运行第二个套件吗 我的套件设置如下所示: <!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" > <suite name="My test s

我正在尝试从一个整体套件文件运行多个套件。我定义了需要运行的套件,并运行“主”套件文件。我使用preserve order按顺序运行每个套件,但其行为与我预期的不同。它似乎一个接一个地、几乎平行地将它们分开

有人知道我如何执行这些套件,保持顺序,最好等到第一个套件完成,然后再运行第二个套件吗

我的套件设置如下所示:

<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd" >
<suite name="My test suite" preserver-order=true>
    <suite-files>
        <suite-file path="Test1.xml"></suite-file>
        <suite-file path="Test2.xml"></suite-file>
        <suite-file path="Test3.xml"></suite-file>
    </suite-files>
</suite>

问候,,
Jacko

在Suite标记中,指定属性thread count=1,parallel=“false”。让我知道这是否有效。

是您没有正确指定属性的问题吗?应该是

保留顺序=“true”

不是

保留顺序=真


最好的选择是删除套件文件标记(因为它不受设计中的保留顺序选项的影响)并重构testng.xml以使用测试标记和对组或保留顺序的依赖关系。

根据

默认情况下,TestNG将按照在XML文件中找到的顺序运行测试。如果希望此文件中列出的类和方法以不可预测的顺序运行,请将“保留顺序”属性设置为false

此外,如果希望执行以不可预测的方式运行,可以按以下方式执行

<suite name="My test suite" preserver-order="false">
    <suite-files>
        <suite-file path="Test1.xml"></suite-file>
        <suite-file path="Test2.xml"></suite-file>
        <suite-file path="Test3.xml"></suite-file>
    </suite-files>
</suite>

您必须指定

保留顺序=“false”

不是

保留顺序=错误


谢谢你的回复。我尝试过这种机制,但问题仍然存在。第一个套件启动,然后立即执行第二个套件和第三个套件。我可以看到,每个套件的控制台输出是相互交织和混合的。让我深入研究一下代码,过一天就会给你回复。嘿,杰科,我也面临着同样的问题。如果您找到了解决方案,请与他人分享。