2011-10-05 3 views
0

antからtestng.xmlファイルのテストを呼び出そうとしています。antを使用しているときにtestngファイルで必要なテストのみを呼び出す

私のtestng.xmlは、次のようになります。

<suite name="testsuite"> 
    bunch of parameters here 
    <test name="test1"> 
    </test> 

    <test name="test2"> 
    </test> 
</suite> 

は今、私は「TEST2」のものだけ「TEST1」のテストを実行したいといません。これを行うには、ant build.xmlファイルに指示する方法(パラメータ?)はありますか?

<testng classpathref="testng.class.path" delegateCommandSystemProperties="true" 
      outputDir="${test-output}" haltOnfailure="false" useDefaultListeners="true" 
      parallel="methods" 
      failureproperty="test.failure"> 
      <xmlfileset file="testng.xml"/> 
      <!--forked JVM OOM issue--> 
      <jvmarg value="-Xmx512M"/> 
      <jvmarg value="-Xms512M"/> 
      <jvmarg value="-Xmn192M"/> 
      <jvmarg value="-XX:PermSize=128M"/> 
      <jvmarg value="-XX:MaxPermSize=128M"/> 

     </testng> 

答えて

1

documentation(:複数のノート)で-testnamesを検索します。

+0

こんにちはセドリック、に感謝応答。私はドキュメントのテスト名を見つけることができませんでした。どのように使用するか、このパラメータを通した値を渡す方法の例を教えてください – ajay

+0

本当ですか? 「TestNGの実行」セクションにあります。-testnames \tカンマ区切りのテスト名のリスト。 \tこれらの名前の1つに一致するタグで定義されたテストだけが実行されます。 –

+0

こんにちは私は実際にそれを見つけてそれを昨日使っていましたが、それはうまくいきませんでした。それは基本的にtestngファイル内のすべてのブロックを実行しました。私が正しい方法で使用しているかどうかはわかりません。あなたは例を挙げて私を助けてください。 – ajay

0

xmlファイルは、テストを含むクラスファイルからすべてのテストを実行しているわけではありません。私が見ているように、意図する方法は、既存のXMLファイルを変更するか、新しいXMLファイルを作成することです。それでも

、あなたの試験は異なるクラスファイルに含まれている場合(私はあなたのコード例からこれを見ることができない)、あなたは例えば、代わりにxmlfilesetのclassfilesetを指定することができます。

<testng workingDir="../../" outputdir="${output_dir}" 
       verbose="2" listeners="org.uncommons.reportng.HTMLReporter,org.uncommons.reportng.JUnitXMLReporter" 
       classpathref="testsClasspath"> 
       <classfileset dir="./${test_classes}/com/my/organization" includes="MyTest.class" /> 
      </testng> 
関連する問題