Testng-html-xml-report

提供:Dev Guides
移動先:案内検索

TestNG-HTMLおよびXMLレポート

TestNGには、ライブラリの一部として特定の定義済みリスナーが付属しています。 これらのリスナーはデフォルトですべてのテスト実行に追加され、テスト実行ごとに異なるHTMLおよびXMLレポートを生成します。 レポートはデフォルトで testoutput という名前のフォルダーの下に生成され、構成することで他のフォルダーに変更できます。 これらのレポートは、TestNG固有の特定のHTMLおよびXMLレポートで構成されます。

テストケースクラスを作成する

*C:\> TestNG_WORKSPACE* に *SampleTest.java* などのJavaクラスを作成します。
import org.testng.Assert;
import org.testng.annotations.Test;

public class SampleTest {
   @Test
   public void testMethodOne() {
      Assert.assertTrue(true);
   }

   @Test
   public void testMethodTwo() {
      Assert.assertTrue(false);
   }

   @Test(dependsOnMethods = {"testMethodTwo"})
   public void testMethodThree() {
      Assert.assertTrue(true);
   }
}

上記のテストクラスには、実行時に_testMethodOne_と_testMethodThree_が合格する3つのテストメソッドが含まれていますが、_testMethodTwo_は、テストの真理条件に使用されるAssert.assertTrueメソッドに_false_ブール値を渡すことで失敗します。

testng.xmlを作成する

*C:\> TestNG_WORKSPACE* にtestng.xmlを作成して、テストケースを実行します。
<?xml version = "1.0" encoding = "UTF-8"?>
<suite name = "Simple HTML-XML Suite">

   <test name = "Simple HTML-XML test">
      <classes>
         <class name = "SampleTest"/>
      </classes>
   </test>
</suite>

javacを使用してSampleTestクラスをコンパイルします。

C:\TestNG_WORKSPACE>javac SampleTest.java

次に、testng.xmlを実行します。

C:\TestNG_WORKSPACE>java -cp "C:\TestNG_WORKSPACE" org.testng.TestNG testng.xml

出力を確認します。

===============================================
   Simple HTML-XML Suite
   Total tests run: 3, Failures: 1, Skips: 1
===============================================

次に、C:\ TestNG_WORKSPACE \ test-outputフォルダーに移動します。 デフォルトのWebブラウザで_indexl_を開きます。 次のHTMLレポートが表示されます-

HTMLレポート

さて、システムのデフォルトのXMLエディタでファイル_C:\ TestNG_WORKSPACE \ test-output \ testing-results.xml_を開くと、XMLファイルに次の内容が表示されます-

XMLレポート

TestNGは、デフォルトでは、テスト実行の一部として複数のレポートを生成します。 これらのレポートには、主にTestNG HTMLレポート、TestNG電子メール対応レポート、TestNGレポートXML、およびJUnitレポートXMLファイルが含まれます。 これらのファイルは、出力レポートフォルダー(この場合はテスト出力)にあります。

プロパティの値_useDefaultListeners_を_false_に設定することにより、テストの実行中にこのデフォルトのレポート生成を無効にできます。 このプロパティは、AntやMavenなどのビルドツールを使用しているときに設定できます。