2016-08-18 6 views
1

SerenityレポートのCSSとロゴを変更したいとします。また、Serenityのレポートにいくつかのカスタムテキストやリンクを追加したいと思います.Excelレポートが生成されるのと同じように、レポートのテストステップでそのレポートのリンクを提供したいと思います。これを達成する最良の方法は何ですか?平日のレポートをカスタマイズする方法

+0

をハッキングに保ち、私はそれが役に立てば幸い

:-)私が何ができるか見てみましょう。 _serenity-report-resources-x.x.xx.jar_から始め、** Serenity **がレポートをどのように作成するかを理解することをお勧めします。また、ロゴの変更方法については、[こちら](http://stackoverflow.com/questions/38913415/serenity-reports-logo-change/38917386#38917386)をご確認ください。 – JDelorean

答えて

0

CSSとイメージをカスタマイズするうえで、以下のようにMaven Resources Pluginを使用しています。

  <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-resources-plugin</artifactId> 
      <version>2.4</version> 
      <executions> 
       <execution> 
        <id>copy-web.xml</id> 
        <phase>validate</phase> 
        <goals> 
         <goal>copy-resources</goal> 
        </goals> 
        <configuration> 
         <overwrite>true</overwrite> 
         <outputDirectory>${basedir}/target/site/serenity/images</outputDirectory> 
         <resources> 
          <resource> 
           <directory>src/main/resources/images</directory> 
          </resource> 
         </resources> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 

ペース "のsrc /メイン/リソース/画像" であなたのイメージ。 HTMLコードにはこの名前が付いているため、「serenity-logo.png」という名前のロゴが必要です。置き換えられるCSSファイルへの相対パスとともにCSSファイルを追加することもできます。

テストを実行した後、コマンド "mvn process-resources"を実行するだけです。これによりファイルが置き換えられ、イメージとCSSファイルがカスタマイズされたサイトが作成されます。

これは最適な解決策ではありませんが、レポートがどのように表示されるかは簡単に確認できます。

0

私は、より良い、より洗練された方法で、Serenityレポートをカスタマイズすることができました。基本的には、バージョン番号が異なる独自のSerenity-reports-resourcesプロジェクトを生成し、公式レポートリソースの代わりにカスタムレポートリソースビルドを使用するようにプロジェクトを構成できます。

  1. ダウンロードソース:

    https://github.com/serenity-bdd/serenity-core.git

  2. 変更は、独自の「静けさ-レポート - 資源」のjarファイルを生成するのGradleのビルド設定を次のようにこれを行うにはsetpsです。 "build.gradle"ファイルを開きます。リポジトリへの 2.1追加 "mavenLocal()":

    buildscript { 
        repositories { 
         mavenLocal() 
         .....

    2.2はMavenのプラグイン

    apply plugin: 'maven-publish'

    2.3の変更サブプロジェクトのバージョン番号を公開します。行を置き換えます

    version = '0.0.0.1'

    ため

    version = rootProject.version

    注:あなたは、レポートサイトの変更を追跡するためにしたいバージョン番号を使用します。ローカルリポジトリに新しいMavenの依存関係としてレポートのサイトをインストールするには、サブプロジェクト「静けさ-レポートリソース」の

  3. 実行

    mvn clean build

    3.1を実行し

    publishing/publishToMavenLocal
    。このビルドは、他の環境でテストを実行するときに必要な場所にパブリッシュまたはデプロイします。

  4. 公式の "serenity-report-resources"依存関係を含まないようにプロジェクトを構成し、代わりに追加します。

4.1依存関係のセクションでは、レポートなしでserenity-coreを追加します。

<dependency> 
    <groupId>net.serenity-bdd</groupId> 
    <artifactId>serenity-core</artifactId> 
    <version>${serenity.version}</version> 
    <exclusions> 
     <exclusion> 
      <groupId>net.serenity-bdd</groupId> 
      <artifactId>serenity-report-resources</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 

4。2カスタムレポートの依存関係を追加します。前に使用したものと同じバージョン番号を使用してください。

<dependency> 
    <groupId>net.serenity-bdd</groupId> 
    <artifactId>serenity-report-resources</artifactId> 
    <version>0.0.0.1</version> 
</dependency> 

4.3カスタムレポートビルドを使用するには、serenityプラグインの依存関係を設定します。

<!-- Serenity plugin --> 
<plugin> 
    <groupId>net.serenity-bdd.maven.plugins</groupId> 
    <artifactId>serenity-maven-plugin</artifactId> 
    <version>${serenity.maven.version}</version> 
    <dependencies> 
     <dependency> 
      <groupId>net.serenity-bdd</groupId> 
      <artifactId>serenity-core</artifactId> 
      <version>${serenity.version}</version> 
      <exclusions> 
       <exclusion> 
        <groupId>net.serenity-bdd</groupId> 
        <artifactId>serenity-report-resources</artifactId> 
       </exclusion> 
      </exclusions> 
     </dependency> 
     <dependency> 
      <groupId>net.serenity-bdd</groupId> 
       <artifactId>serenity-report-resources</artifactId> 
       <version>0.0.2</version> 
     </dependency> 
    </dependencies> 
    <executions> 
     <execution> 
      <id>serenity-reports</id> 
      <phase>post-integration-test</phase> 
      <goals> 
       <goal>aggregate</goal> 
      </goals> 
     </execution> 
    </executions> 
</plugin> 

は今、あなたは「SerenityRunner」でテストを実行したときには、代わりにレポートを構築する公式の静けさの構築カスタムレポートのリソースを見つける必要があります。

レポートを生成するために必要なリソースの場所を、同じフレームワークから静的またはシステムプロパティとして構成するだけでよい場合は、よりよいでしょう。 私は今、いくつかの時間のための答えを探していると、どこでも、この点で行う任意の研究があるようには思えない

関連する問題