Jenkins
WebdriverIOは、JenkinsなどのCIシステムとの緊密な統合を提供します。junit
レポーターを使用すると、テストを簡単にデバッグし、テスト結果を追跡できます。統合は非常に簡単です。
junit
テストレポーターをインストールします:$ npm install @wdio/junit-reporter --save-dev
- Jenkinsが検出できる場所にXUnit結果を保存するように設定を更新し(
junit
レポーターを指定します)、
// wdio.conf.js
module.exports = {
// ...
reporters: [
'dot',
['junit', {
outputDir: './'
}]
],
// ...
}
どのフレームワークを選択するかはユーザー次第です。レポートは似ています。このチュートリアルでは、Jasmineを使用します。
いくつかのテストを作成したら、新しいJenkinsジョブを設定できます。名前と説明を付けます。
次に、リポジトリの最新バージョンを常に取得するようにします。
**重要な部分:** シェルコマンドを実行するビルド
ステップを作成します。ビルド
ステップでは、プロジェクトをビルドする必要があります。このデモプロジェクトは外部アプリのみをテストするため、何もビルドする必要はありません。ノードの依存関係をインストールし、コマンドnpm test
(node_modules/.bin/wdio test/wdio.conf.js
のエイリアス)を実行するだけです。
AnsiColorのようなプラグインをインストールしていても、ログの色がまだ付いていない場合は、環境変数FORCE_COLOR=1
を使用してテストを実行します(例:FORCE_COLOR=1 npm test
)。
テスト後、JenkinsでXUnitレポートを追跡したいでしょう。そのためには、「JUnitテスト結果レポートの公開」というポストビルドアクションを追加する必要があります。
レポートを追跡するために、外部のXUnitプラグインをインストールすることもできます。JUnitプラグインは基本的なJenkinsインストールに含まれており、現時点では十分です。
設定ファイルによると、XUnitレポートはプロジェクトのルートディレクトリに保存されます。これらのレポートはXMLファイルです。したがって、レポートを追跡するために必要なのは、Jenkinsをルートディレクトリ内のすべてのXMLファイルにポイントすることだけです。
以上です!これで、JenkinsでWebdriverIOジョブを実行する設定が完了しました。ジョブは、履歴チャート、失敗したジョブのスタックトレース情報、各テストで使用されたコマンドとペイロードのリストを含む詳細なテスト結果を提供するようになります。