Lightレポーター
wdio-light-reporterはサードパーティのパッケージです。詳細については、GitHub | npmをご覧ください。
HTMLおよびMochawesomeレポーターを参考にしています
理念
このレポーターはCucumberレポートの再生成をサポートしておらず、BDDとMochaフレームワークを念頭に置いて開発されています。ここでは、
describe()セクションをテストシナリオとして、it()をテストシナリオ内のテストケースとして考慮しています。
機能
- 簡単な設定
- 強化されたUI
- HTMLレポートに埋め込まれたスクリーンショット
- ステップコンテキストまたは名前を含めるためのaddLabel()
リリース
V 0.1.9 - 初期リリース V 0.2.6 - (最新)
- 複数の環境実行を含め、環境に基づいて分離します。
- バグ修正
- パフォーマンス向上。
例
 
 

インストール
NPM
npm install wdio-light-reporter --save-dev
設定
reporters: ['dot', ['light',{
      outputDir: './Results',
      outputFile:`demo${new Date()}`,    // html report file will be name this 
      addScreenshots: false,   // to add screenshots in report make it as true. Default is false
  }]
],
スクリーンショット
このレポーターには、スクリーンショットを自動的に設定する機能はありませんが、手動で設定した場合、イベントをリッスンしてHTMLレポートにスクリーンショットを添付します。 **レポートにスクリーンショットを含めるには、wdio confファイルのafterTest()フックに以下のコードを追加してください。**
afterTest: async function (test,context,{ error, result, duration, passed, retries }) {
    if (!passed) {await browser.takeScreenshot()}
},
結果ファイル
各実行は、各specファイルに対してjsonレポートを再生成します。結合されたjsonおよびHTMLレポートを生成するには、wdio confファイルの**onComplete()**フックに以下のコードを追加します。
 onComplete: function (exitCode, config, capabilities, results) {
    const mergeResults = require("wdio-light-reporter/src/mergeResults"); //you can add this on top of the file
    mergeResults("./Results");
 },
--suiteオプションなしでテストを実行すると、デフォルトとしてsuiteが考慮されます。実行時に複数のパラメーターをsuiteとして指定すると、レポーターは機能しません。 wdio run `wdio.conf.js --suite firstSuite` - **(正常に動作します)** :)
wdio run `wdio.conf.js --suite firstSuite --suite secondSuite` **(動作しません)** :(
コンテキストの追加
useLabel()を使用して、ステップにコンテキストを追加したり、ステップとして含めることができます。
const { addLabel } = require("wdio-light-reporter").default;
describe("Show how to use addLabel ", () => {
  it("report will added this a steps/context in report", async () => {
      addLabel("Log Example 1 as step 1")
      console.log("Log Example 1 )
      addLabel("Log Example 2 as step 2")
      console.log("Log Example 2 )
  })
})
アップデート
 reporters: ['dot', ['light',{
      outputDir: './Results',
      outputFile:"demo",    // html report file will be name this 
      addScreenshots: false,   // to add screenshots in report make it as true. Default is false
      //autoClean:false       // removed autoClean and include the same functionality as default in mergeResult function
  }]
],
ライセンス
MIT 無料、最高!