我对这种 testNG 行为有点困惑。
考虑这个简单的 testNG 套件。Test2 依赖于 Test1。下面的套件也仅在 Test1 之后才启动 Test2,这很棒!
<suite name="testng-behvaior" parallel="none">
<test name="test1">
<parameter name="browser" value="chrome" />
<classes>
<class name="com.test.Test1" />
<class name="com.test.Test2" />
</classes>
</test>
</suite>
以上套件工作正常,没有任何问题。
但是考虑一下。根据 testNG 文档,所有这些<test>
都将分配给不同的线程。因为我只有一个<test>
,所以只有一个线程正在执行这个套件,这很好。但它在 Test1 之前从 Test2 开始。
<suite name="testng-behvaior" parallel="tests">
<test name="test1">
<parameter name="browser" value="chrome" />
<classes>
<class name="com.test.Test1" />
<class name="com.test.Test2" />
</classes>
</test>
</suite>
对我来说 - 在上述情况下,parallel="tests"
不parallel="none"
应该有任何区别并且表现相同。
是什么让 testNG 表现得不同?我怎样才能让线程按<classes>
顺序<test>
执行?