testng.xmlのフォーマット
7853 ワード
簡単な説明:
テストコードには、テストが必要なメソッドの前にコメントを付けます.たとえば、次のようにします.
XMLファイルの書き方
以下の詳細XMLルール
-結合-構造-ツリー
suite
--tests
----parameters
----groups
------definitions
------runs
----classes
--parameters
**suite要素
suiteはtestngです.xmlドキュメントの最上位レベルの要素
属性:パラメータリスト("")はデフォルト値、CDATAは文字列を表します)
name
suiteの名前(テストレポートに表示されます)
junit
junitモードで実行するかどうか
verbose
コンソールでどのように出力するか、この設定はhtmlバージョンのテストレポートに影響しません.
parallel
マルチスレッドテストを使用するかどうか(テストを加速する可能性があります)
configfailurepolicy
1回の実行に失敗した後、試行またはスキップを続行しますか?
thread-count
parallelが設定されている場合は、スレッド数を設定できます.
annotations
『javadoc』があるときに探しますが、なければjdk 5のコメントを使います
time-out
ミリ秒単位の待ち時間は、method(parallel=methodsの場合)またはtest(parallel=testsの場合)を終了する前に設定します.
skipfailedinvocationcounts
失敗したコールをスキップするかどうか
data-provider-thread-count
parallel dataを使用するための整数スレッドプールの範囲を指定します.
object-factory
IObjectFactoryを継承するクラスで、テストオブジェクトをインスタンス化するために使用されます.
allow-return-values
trueを設定すると、テスト・インスタンスが実行され、値が返されます.
**suite-files要素
XMLドキュメントのリストには、より多くのsuite記述が含まれています.
パラメータリスト
**パラメータ要素
Parametersはsuiteまたはtestレベルで定義することができる.
Parametersはtestレベルでsutieレベルを上書きする同名パラメータを定義します
Parametersはjavaメソッドパラメータの実際の値に連絡するために使用され、ここで定義.
パラメータリスト
**method-selectors要素
メソッドセレクタは、orgを継承する必要があるメソッドを定義します.testng.IMethodSelector
パラメータのリスト:
**script要素
パラメータのリスト:
**test要素
1つのtestにはパラメータとclassesが含まれています.また、グループ(グループ内のグループ)を定義できます.
属性:
name
テストの名前(テストレポートに表示されます)
junit
junitモードで実行するかどうか
verbose
コンソールでどのように出力するか、この設定はhtmlバージョンのテストレポートに影響しません.デフォルト:suiteレベルのverbose
parallel
マルチスレッドテストを使用するかどうか(テストを加速する可能性があります)
thread-count
parallelが設定されている場合は、スレッド数を設定できます.
annotations
『javadoc』があるときに探しますが、なければjdk 5のコメントを使います
time-out
ミリ秒単位の待ち時間は、method(parallel=methodsの場合)またはtest(parallel=testsの場合)を終了する前に設定します.
enabled
現在のtestを実行するかどうかを設定します.デフォルト:true
skipfailedinvocationcounts
エラーの呼び出しをスキップするかどうか
prserve-order
trueを設定すると、classesはXMLドキュメントの順序で実行されます.
allow-return-values
trueを設定すると、テスト・インスタンスが実行され、値が返されます.
属性リスト:
**groups要素
テストで実行するグループ(グループ内のグループ)を定義します.
**define要素
属性リスト
**include要素
グループ内のグループの定義
属性リスト
**exclude要素
除外グループの定義
属性リスト
**run要素
グループが実行される必要があることを定義します
**dependencies要素
**group要素
属性リスト
**classes要素
今回のtestに含まれるclassesリスト
**class要素
属性リスト:
**packages要素
今回のtestに含まれるpackagesリスト
**package要素
パッケージ名の末尾に.*が含まれている場合は、すべてのサブパッケージが含まれます
属性リスト:
**methods要素
今回のtestに含まれるmethodsリストまたは除外
**listeners要素
TestNGのリスニングリストに転送されます
**listener要素
属性リスト:
テストコードには、テストが必要なメソッドの前にコメントを付けます.たとえば、次のようにします.
package com.yiban.test;
public class test2 {
@Parameters({ "first-name" }) //
@Test(groups={"g1","g2"}) //
public void test001() throws Exception {
System.out.println("test001");
}
}
XMLファイルの書き方
<test name="xxxx">
<!-- -->
<parameter name="first-name" value="Cedric"/>
<!-- groups , classes , -->
<groups>
<!-- -->
<define name="groups_name">
<include name="group1"/>
<include name="group2"/>
</define>
<run>
<!-- -->
<inclue name="groups_name" />
<exclue name="groups_name" />
</run>
</groups>
<!-- classes ,classes , -->
<classes>
<class name="class1">
<methods>
<!-- -->
<inclue name="method_name" />
<exclue name="method_name" />
</methods>
</class>
</classes>
</test>
以下の詳細XMLルール
-結合-構造-ツリー
suite
--tests
----parameters
----groups
------definitions
------runs
----classes
--parameters
**suite要素
suiteはtestngです.xmlドキュメントの最上位レベルの要素
< suite (groups?,(listeners|packages|test|parameter|method-selectors|suite-files)*) >
属性:パラメータリスト("")はデフォルト値、CDATAは文字列を表します)
name
suiteの名前(テストレポートに表示されます)
junit
junitモードで実行するかどうか
verbose
コンソールでどのように出力するか、この設定はhtmlバージョンのテストレポートに影響しません.
parallel
マルチスレッドテストを使用するかどうか(テストを加速する可能性があります)
configfailurepolicy
1回の実行に失敗した後、試行またはスキップを続行しますか?
thread-count
parallelが設定されている場合は、スレッド数を設定できます.
annotations
『javadoc』があるときに探しますが、なければjdk 5のコメントを使います
time-out
ミリ秒単位の待ち時間は、method(parallel=methodsの場合)またはtest(parallel=testsの場合)を終了する前に設定します.
skipfailedinvocationcounts
失敗したコールをスキップするかどうか
data-provider-thread-count
parallel dataを使用するための整数スレッドプールの範囲を指定します.
object-factory
IObjectFactoryを継承するクラスで、テストオブジェクトをインスタンス化するために使用されます.
allow-return-values
trueを設定すると、テスト・インスタンスが実行され、値が返されます.
< suite
name CDATA #
junit (true | false) "false"
verbose CDATA #
parallel (false | methods | tests | classes | instances) "false"
configfailurepolicy (skip | continue) "skip"
thread-count CDATA "5"
annotations CDATA #
time-out CDATA #
skipfailedinvocationcounts (true | false) "false"
data-provider-thread-count CDATA "10"
object-factory CDATA #
group-by-instances (true | false) "false"
preserve-order (true | false) "true"
allow-return-values (true | false) "false"
>
**suite-files要素
XMLドキュメントのリストには、より多くのsuite記述が含まれています.
< suite-files (suite-file)* >
< suite-file ANY >
パラメータリスト
< suite-file
path CDATA #
>
**パラメータ要素
Parametersはsuiteまたはtestレベルで定義することができる.
Parametersはtestレベルでsutieレベルを上書きする同名パラメータを定義します
Parametersはjavaメソッドパラメータの実際の値に連絡するために使用され、ここで定義.
< parameter ANY>
パラメータリスト
< parameter
name CDATA #
value CDATA # >
**method-selectors要素
メソッドセレクタは、orgを継承する必要があるメソッドを定義します.testng.IMethodSelector
< method-selectors (method-selector*) >
< method-selector ((selector-class)*|script) >
< selector-class ANY>
パラメータのリスト:
< selector-class
name CDATA #
priority CDATA #
>
**script要素
< script ANY>
パラメータのリスト:
< script
language CDATA #
>
**test要素
1つのtestにはパラメータとclassesが含まれています.また、グループ(グループ内のグループ)を定義できます.
< test (method-selectors?,parameter*,groups?,packages?,classes?) >
属性:
name
テストの名前(テストレポートに表示されます)
junit
junitモードで実行するかどうか
verbose
コンソールでどのように出力するか、この設定はhtmlバージョンのテストレポートに影響しません.デフォルト:suiteレベルのverbose
parallel
マルチスレッドテストを使用するかどうか(テストを加速する可能性があります)
thread-count
parallelが設定されている場合は、スレッド数を設定できます.
annotations
『javadoc』があるときに探しますが、なければjdk 5のコメントを使います
time-out
ミリ秒単位の待ち時間は、method(parallel=methodsの場合)またはtest(parallel=testsの場合)を終了する前に設定します.
enabled
現在のtestを実行するかどうかを設定します.デフォルト:true
skipfailedinvocationcounts
エラーの呼び出しをスキップするかどうか
prserve-order
trueを設定すると、classesはXMLドキュメントの順序で実行されます.
allow-return-values
trueを設定すると、テスト・インスタンスが実行され、値が返されます.
属性リスト:
< test
name CDATA #
junit (true | false) "false"
verbose CDATA #
parallel CDATA #
thread-count CDATA #
annotations CDATA #
time-out CDATA #
enabled CDATA #
skipfailedinvocationcounts (true | false) "false"
preserve-order (true | false) "true"
group-by-instances (true | false) "false"
allow-return-values (true | false) "false"
>
**groups要素
テストで実行するグループ(グループ内のグループ)を定義します.
< groups (define*,run?,dependencies?) >
**define要素
< define (include*)>
属性リスト
< define
name CDATA #
>
**include要素
グループ内のグループの定義
<include ANY>
属性リスト
< include
name CDATA #
description CDATA #
invocation-numbers CDATA # >
**exclude要素
除外グループの定義
< exclude ANY>
属性リスト
< exclude
name CDATA #
>
**run要素
グループが実行される必要があることを定義します
< run (include?,exclude?)* >
**dependencies要素
< dependencies (group*)>
**group要素
< group ANY>
属性リスト
< group
name CDATA #
depends-on CDATA #
>
**classes要素
今回のtestに含まれるclassesリスト
< classes (class*) >
**class要素
< class (methods*) >
属性リスト:
< class
name CDATA # >
**packages要素
今回のtestに含まれるpackagesリスト
< packages (package*) >
**package要素
パッケージ名の末尾に.*が含まれている場合は、すべてのサブパッケージが含まれます
< package (include?,exclude?)*>
属性リスト:
< package
name CDATA #
>
**methods要素
今回のtestに含まれるmethodsリストまたは除外
< methods (include?,exclude?,parameter?)* >
**listeners要素
TestNGのリスニングリストに転送されます
< listeners (listener*) >
**listener要素
< listener ANY>
属性リスト:
<listener
class-name CDATA #
>