テストケースは、テスト効率を向上させるために、一般的にシングルスレッドモードです。マルチスレッディングTestNGのテスト、クラス、メソッドレベルの並行性に分けることができ、それは専用タグにtestng.xmlに設定することができます。
メソッドレベル:すべてのユースケースは、別のスレッドで実行するようにしています。
classsレベル:ユースケースは、同じクラスのタグ内の同じスレッドで実行することができ、異なるユースケース・クラス・タグ内の異なるスレッドで実行されてもよいです。
試験レベル:ユースケースは、同じテストタグ内の同じスレッドで実行することができ、テストタグの下異なる実施形態と異なるスレッドで実行されてもよいです。
以下のような:
<スイート名=「TestNGの並列テスト」平行=「テスト」スレッドカウント=「3」>
<スイート名=「TestNGの並列テスト」平行=「クラス」スレッドカウント=「3」>
<スイート名=「TestNGの並列テスト」平行=「方法」スレッドカウント=「3」>
次のようにJavaコード
1 パッケージcom.course.testng.multiThread。 2 3 インポートorg.testng.annotations.Test。 4 5 パブリック クラスMultiThreadOnXml { 6 7 @Test 8 公共 ボイドTEST1(){ 9 System.out.printf( "线程ID" + にThread.currentThread()のgetId())。 10 } 11 @Test 12 公共 ボイドTEST2(){ 13 System.out.printf( "线程ID" + にThread.currentThread()のgetId())。 14 } 15 @Test 16 公共 ボイドTEST3(){ 17 System.out.printf( "线程ID" + にThread.currentThread()のgetId())。 18 } 19 }
次のようにXML設定であります
1 <?のXmlバージョン= "1.0"エンコード= "UTF-8" ?> 2 < スイート名= "スレッド"はパラレル= "メソッド" スレッドカウント= "2" > 3 <! - レベルのスレッドがメソッドレベルでありますA 4つの 並列特性 5つの。 試験評価:別のスレッドで同一のテストタグに異なるテストタグ下ケース、ユースケースのみつのスレッドを使用して実行することができる識別名によって、典型的には、試験ラベルXMLファイルを指し実行のために 6つの メソッドレベル:すべてのユースケースは、別のスレッドで実行するために行くことができる 7 classsレベル:別のスレッドで、異なるクラスタールユースケースで同じスレッドの実装では、同じクラスのtarユースケースの下で実行する 8 スレッドを-counプロパティ:同時スレッドの最大数を表し 9つの このように、XML構成ファイルは、スレッドプールを指定することはできません、この方法は、スレッドプールを指定することができる 10 - > 11 <テスト名= "DEMO1" > 12 < クラス> 13 < クラス名= "com.course.testng.multiThread.MultiThreadOnXml" /> 14 </ クラス> 15 </ 試験> 16 17 </ スイート>