結果をローカルに保存する
スキャン結果をローカルに保存すると、JSON結果を使ってアクセシビリティの指標を様々な報告ツールに統合することができます。また、HTMLレポートを作成してメールやチャットで共有し、テストランのアクセシビリティの状態をチームに通知することもできます。
結果をローカルに保存する機能は、自動テストでのみサポートされています。
結果を保存して共有する
以下のコードを使用して、テスト結果を.jsonファイルとして保存します。パスとファイル名が指定されていない場合、結果は"(APPID)-(CURRENT_SCREEN_TITLE).json"と名付けられ、Userフォルダー内の"AxeDevToolsResults"というフォルダーに保存されます。スキャン名は、可能であればビュControllerタイトルがデフォルトになります。
try axe?.saveResult(result, toPath: "", withFileName: "", withScanName: "")HTMLレポートとサマリーを生成する
テストの終了処理にgenerateHtmlReportAndSummaryの呼び出しを追加して、自己完結型HTMLレポートを作成し、デバイスにローカルに保存します。このAPI呼び出しは、保存された結果ファイルをすべてフラッシュし、セッションが開始された時点から(またはこのメソッドを最後に呼び出してから)累積されたすべてのスキャンを収集します。generateHtmlReportAndSummaryを実行中に複数回呼び出すと、フローごとに別々のレポートが作成されます(例:画面ごとまたは機能エリアごと)。
テストスイートが終了すると、指定したディレクトリに自己完結型HTMLレポートが書き込まれます。コンソールに記録されたパスを確認して、レポートファイルを見つけてください。絶対パスまたは~で始まるパスを提供することで、outputPathパラメータを使用してレポートを特定のディレクトリに書き込むことができます。パスが省略された場合、デフォルトは~/AxeDevToolsMobileResultsまたはnilになります。
@discardableResult
public func generateHtmlReportAndSummary(outputPath: String? = nil) throws -> AxeReportResultこれらのレポートには、スクリーンショットとルールの失敗のみが含まれます。詳細なレポートが必要な場合、ビュー階層、通過または不完全とマークされたルール、ルール失敗の詳細を含む報告書を作成するために、Axe DevTools Reporter CLIを使用するべきです。
結果を使用した詳細レポート
Axe DevTools Reporter CLIを利用して、スキャンのセットからHTMLレポートを作成します。あるいは、プログラムで結果ファイルにアクセスし、アクセシビリティメトリクスを内部報告ツールと統合することができます。
完全な例
func testAccessibility() throws {
guard let result = try axe?.run(onElement: XCUIApplication()) else { XCTFail(); return }
//Save Result Locally
let path = try axe?.saveResult(result)
print("Result saved to location: \(path)")
//Any assertions
XCTAssertEqual(result?.failures.count, 0)
}クラウドテストプラットフォームでのサポート
結果をローカルに保存することは、クラウドテストプラットフォームでは期待通りに機能しません。クラウドテストプラットフォーム対応が必要な場合は、helpdesk@deque.comまたはsupport.deque.comにリクエストを送信してください。
