JSON レポーター
概要
JSON レポーターは、HTML と XML レポーターと共に Nightwatch のデフォルトレポーターの1つです。テスト結果を JSON 形式で出力し、他のツールでレポートを視覚化するために使用できます。
設定
JSON レポーターは、バージョン 2.2 以降、デフォルトで有効
になっており、その動作は次のように設定できます。
設定ファイルによる設定
output_folder
設定は、JSON レポートファイルが保存される場所を指定するために使用されます。Nightwatch は、nightwatch-examples
というサブフォルダ内に、各テストスイートファイルの JSON レポートを書き込みます。
module.exports = { output_folder: 'tests_output' }
テスト出力関連の設定の完全なリストについては、「設定 > 出力設定」ページを参照してください。
CLI による設定
--output
フラグを使用して、CLI で実行時に出力フォルダを設定することもできます。
module.exports = {
output_folder: 'tests_output'
}
nightwatch --output ./tests-output
Nightwatch が受け入れる CLI フラグの完全なリストについては、「CLI リファレンスページ」を参照してください。
JSON ファイル名は、次のパターンに従います。
<BROWSER>_<VERSION>__<testSuiteFileName>.json
例
ステップ 0:Nightwatch のインストール
Nightwatch を最初からインストールするには、「ガイド」に従うか、「ビデオ」をご覧ください。
ステップ 1:サンプルテストの実行
duckDuckGo.js
サンプルテストを考えてみましょう。
describe('duckduckgo example', function() {
it('Search Nightwatch.js and check results', function(browser) {
browser
.navigateTo('https://duckduckgo.com')
.waitForElementVisible('#search_form_input_homepage')
.sendKeys('#search_form_input_homepage', ['Nightwatch.js'])
.click('#search_button_homepage')
.assert.visible('.results--main')
.assert.textContains('.results--main', 'Nightwatch.js');
});
});
このテストは、次のコマンドを使用して実行できます。
npx nightwatch examples/tests/duckDuckGo.js --env chrome
組み込みの JSON レポートのみを生成するには、次のコマンドを実行します。
npx nightwatch examples/tests/duckDuckGo.js --env chrome --reporter=json
注記:もし output_folder
のサブフォルダ nightwatch-examples
がまだ存在せず、上記のようにパラメータ --reporter=json
を明示的に指定した場合、レポートは output_folder
自体に保存されます。
組み込みの JUnit-XML レポートと JSON レポートの両方を生成するには、次のコマンドを実行します(v2.2 以上)。
npx nightwatch examples/tests/duckDuckGo.js --env chrome --reporter=junit --reporter=json
ステップ 2:JSON レポートの表示
JSON レポートは、現在のプロジェクトディレクトリ内のローカルの tests_output
フォルダに生成されているはずです。次のような表示になります。
