2012-05-10 8 views
0

でのtestMethodパラメータに到達するには、XMLファイル内のパラメータが<include>タグ内に設定されている、このような何か:場合、私はbeforeInvocation方法でテストパラメータに到達することができます。もちろん、TestNGのTestListener - どのようにTestListener beforeInvocation方法

<suite name="Suite"> 
    <listeners> 
    <listener class-name="..MyTestListener"/> 
    </listeners> 
    <classes> 
    <class name="Foo"> 
     <methods> 
     <include name="myTest"> 
      <parameter name="parameter1" value="parameterValue"/> 
     </include> 
.. 

パラメータタグはインクルードタグの外にあります(例:method.getTestMethod().getXmlTest().getParameter("parameter1"))。しかし、この場合、テストメソッドにバインドするためにパラメータが必要であり、getParameterメソッドの戻り値としてnullが返されます。

おかげで、DTD here 1としてStristi

答えて

0

は、パラメータは、<suite>で又は<test>レベルで定義することができます。 レベルで定義されたパラメータは、同じ名前のパラメータを<suite>に上書きします。したがって、クラスレベルでパラメータを関連付けることはできません。

また、testngの<test>は、一連のクラス、例えばhereを意味します。それが役に立つ場合は、おそらくpart of testng documentationを参照してください。ここでは、testng xmlの命名法について説明しています。 <test>タグのパラメータは、その下にあるすべてのクラスで参照できます。

+0

2011年12月以来、TestNGの中 個々のテストのためのパラメータを定義することが可能です。 – user1360847

+0

前述のように、testng xmlの中でtest>タグについて話しているのであれば、それはクラスまたは単一のクラスのセットを意味します。したがって、testng xmlのテストタグでは、個々のテストケース(コード内のATテスト)で@Parameterを使用してアクセスできます。しかしタグをの中に入れることはできません。 タグの代わりに、タグまたはタグのいずれかを使用する必要があります。 –

+0

このフォーラムにアクセスする:http://groups.google.com/group/testng-users/browse_thread/thread/867380549828f01a/4b0776faeba2df1b?lnk=gst&q=Parameters+for+test+cases+in+the+XML+#4b0776faeba2df1b – user1360847

1

私の質問に対する答えが見つかりました。 IInvokedMethodListener beforeInvocationメソッドにはITestResultパラメータがあり、これにはgetParametersメソッドとsetParametersメソッドがあります。または、IHookableインターフェイスを使用すると、testMethodの入力パラメータを処理し、testMethodを呼び出すことができます。

Brで、Stristi

関連する問題