0
我有很多組,我希望能夠並行運行所有或子集,例如, -Dgroups = a,b,...我有一個用@BeforeGroups註釋標註的方法,需要在運行一個組之前做一些行爲。我看到的行爲是,當我運行兩個特定的組,一個是三個測試,另一個是兩個時,第一組的前兩個測試運行,然後是第二組的兩個測試,然後是第一組的最後一個方法。 (按照定義測試的類名的字母順序)這些方法分佈在不同的類中。請幫忙!TestNG + Groups + BeforeGroups按字母順序運行方法
的testng.xml
<!DOCTYPE suite SYSTEM "http://beust.com/testng/testng-1.0.dtd" >
<suite name="API Tests">
<test name="all">
<groups>
<run>
<include name="a" />
<include name="b" />
<include name="c" />
<include name="d" />
<include name="e" />
</run>
</groups>
<packages>
<package name="package.*" />
</packages>
</test>
</suite>
執行順序(用縮寫混淆)
Class: E; Method: testF; Group: a
Class: I; Method: testI; Group: a
Class: S; Method: testSH; Group: b
Class: S; Method: testSI; Group: b
Class: T; Method: testF; Group: a
注:我已經嘗試設置線程1,不能解決測試/組的順序執行。
這不起作用。上面提到的測試執行行爲仍然存在。我嘗試了一個線程,其中有一個測試,它有兩個組,它們具有相同的錯誤行爲。 – kfox
這是預期的行爲。如果您嘗試了一個包含2個組的測試,它將依次運行它們,因爲在測試中設置了並行標誌。請嘗試在我的答案中提到的那一個,然後降級我的答案 – praneel
我嘗試了相同的結果,也許我不明白你的回答。我想運行兩個組,所以我只包含Group1And2並設置parallel =「tests」thread-count =「1」。 – kfox