テスト結果を含むHTMLレポートを(簡単に)生成する方法はありますか?現在、WebアプリのUIをテストするために、Seleniumに加えてJUnitを使用しています。
PS:プロジェクト構造を考えると、Ant :(を使用することになっていない
couldAntを使用する場合、ここで詳細に説明するように、JUnitReportタスクを使用します。 http://ant.Apache.org/manual /Tasks/junitreport.html 、しかしあなたは質問であなたがAntを使うことになっていないと言った。タスクはXMLレポートをHTMLに変換するだけなので、XSLTプロセッサを使用して同様のレポートを生成することが可能だと思います。
または、TestNG( http://testng.org/doc/index.html )に切り替えることができます。これは、JUnitに非常に似ていますが、デフォルトのHTMLレポートと他のいくつかの便利な機能があります。
あるいは、Mavenビルドツールを使用している場合は、 Surefire Report というプラグインがあります。
レポートは次のようになります。 Sample
上記の回答は非常に便利ですが、実際には一般的な目的ではなく、AntやMavenなどの他の主要なビルドシステムが必要です。
何でも(ビルド、テスト、または自分から)呼び出すことができる簡単なワンショットコマンドでレポートを生成したかったので、ここにあるjunit2htmlを作成しました: https:// github。 com/inorton/junit2html
以下を実行してインストールできます。
pip install junit2html
これは、antを介して簡単に実行できます。これを行うためのbuild.xmlファイルを次に示します
<project name="genTestReport" default="gen" basedir=".">
<description>
Generate the HTML report from JUnit XML files
</description>
<target name="gen">
<property name="genReportDir" location="${basedir}/unitTestReports"/>
<delete dir="${genReportDir}"/>
<mkdir dir="${genReportDir}"/>
<junitreport todir="${basedir}/unitTestReports">
<fileset dir="${basedir}">
<include name="**/TEST-*.xml"/>
</fileset>
<report format="frames" todir="${genReportDir}/html"/>
</junitreport>
</target>
</project>
これにより、TEST-*。xml形式のファイルが検索され、unitTestReportsという名前のフォルダーにレポートが生成されます。
これを実行するには(上記のファイルがbuildTestReports.xmlと呼ばれると仮定して)ターミナルで次のコマンドを実行します。
ant -buildfile buildTestReports.xml
Junit xml形式は、Java/Maven/Ant Wordの外部で使用されます。 http://wiki.jenkins-ci.org/display/JENKINS/xUnit+Plugin のJenkinsは解決策です。
ワンショットソリューションについては、仕事をするこのツールを見つけました: https://www.npmjs.com/package/junit-viewer
junit-viewer --results=surefire-reports --save=file_location.html
--results=
はxmlファイルのあるディレクトリです(テストレポート)
Selenium WebDriverスクリプトのHTMLレポートを生成するために利用できる複数のオプションがあります。
1。 JUNIT TestWatcherクラスを使用して、独自のSelenium HTMLレポートを作成します
TestWatcher JUNITクラスを使用すると、JUNITテストが失敗または合格したときに自動的に呼び出されるfailed()およびsuccessed()JUNITメソッドをオーバーライドできます。
TestWatcher JUNITクラスでは、次のメソッドをオーバーライドできます。
failed()メソッドは、テストが失敗すると呼び出されます
finished()メソッドは、テストメソッドが終了したときに呼び出されます(合格または失敗)
skipped()メソッドは、仮定が失敗したためにテストがスキップされたときに呼び出されます。
starting()メソッドは、テストが開始されるときに呼び出されます
テストが成功すると、successed()メソッドが呼び出されます
この場合のサンプルコードを次に示します。
import static org.junit.Assert.assertTrue;
import org.junit.Test;
public class TestClass2 extends WatchManClassConsole {
@Test public void testScript1() {
assertTrue(1 < 2); >
}
@Test public void testScript2() {
assertTrue(1 > 2);
}
@Test public void testScript3() {
assertTrue(1 < 2);
}
@Test public void testScript4() {
assertTrue(1 > 2);
}
}
import org.junit.Rule;
import org.junit.rules.TestRule;
import org.junit.rules.TestWatcher;
import org.junit.runner.Description;
import org.junit.runners.model.Statement;
public class WatchManClassConsole {
@Rule public TestRule watchman = new TestWatcher() {
@Override public Statement apply(Statement base, Description description) {
return super.apply(base, description);
}
@Override protected void succeeded(Description description) {
System.out.println(description.getDisplayName() + " " + "success!");
}
@Override protected void failed(Throwable e, Description description) {
System.out.println(description.getDisplayName() + " " + e.getClass().getSimpleName());
}
};
}
2。アリュールレポートフレームワークを使用する
アリュールフレームワークは、Selenium WebDriverプロジェクトのHTMLレポートの生成に役立ちます。
レポートフレームワークは非常に柔軟で、多くのプログラミング言語と単体テストフレームワークで動作します。
http://allure.qatools.ru/ でそれに関するすべてを読むことができます。
次の依存関係とプラグインをpom.xmlファイルに追加する必要があります
この記事のコードサンプルを含む詳細を参照してください: http://test-able.blogspot.com/2015/10/create-Selenium-html-reports-with-allure-framework.html
見つけました xunit-viewer
、非推奨junit-viewer
が言及した @ daniel-kristof-kiss 。
非常にシンプルで、関連するすべてのファイルをANT Junit XML形式で自動的に再帰的に収集し、フィルタリングやその他の便利な機能を備えた単一のhtmlファイルを作成します。
Travisは標準形式のテスト結果出力の収集をサポートしていないため、Travisビルドからテスト結果をアップロードするために使用します。