XCTestを用いたターゲットテスト
フレームワークをUIテストに追加する
テスト内でアクセシビリティスキャンを実行するタイミングと場所を完全にコントロールしたい場合は、ターゲットテストを実装する必要があります。以下の手順に従って、UIテスト内でAxeDevToolsライブラリを設定し、アクセシビリティ問題を確認してください。を明示的に呼び出します。 axe.scan() 特定のコードのポイントでメソッドを使用します。
自動テスト
XCTestは、 axeDevToolsXCUIの実行に必要です。他のUIテストフレームワークもXCTestを利用してサポートされています。
テストのセットアップ
アクセシビリティテストに使用されるファイルには、axeDevToolsXCUIフレームワークをインポートします。
import axeDevToolsXCUIテストクラス内でaxe DevToolsインスタンスを保持するオブジェクトを作成します。
var axe: AxeDevTools?フレームワークを以下の内で初期化します。 setUp または setUpWithError メソッド。
テストセッションの開始
APIキーを生成する axe.deque.com。axe Developer Hubに結果を投稿するために、 startSession APIキーとプロジェクトIDを用います Developer Hub。
axe = try? AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>",
projectId: "<DEVHUB_PROJECT_ID>")結果をローカルに保存するだけでよい場合は、プロジェクトIDを含める必要はありません。
axe = try? AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>")セットアップの例
import axeDevToolsXCUI
import XCTest
class MyUITests: XCTestCase {
var axe: AxeDevTools?
var app = XCUIApplication()
override func setUpWithError() throws {
axe = try AxeDevTools.startSession(apiKey: "<DEQUE_APIKEY>",
projectId: "<DEVHUB_PROJECT_ID>")
// Include the projectId to post results to axe Developer Hub (recommended)
app.launch()
}
}オフラインライセンスキーによる接続
iOS SDKにはオフライン自動化が利用可能ですが、認証のためにオフラインライセンスキーが必要です。Dequeの担当者または サポートに連絡 してライセンスキーの配送を調整してください。その後、以下のスニペットを使用して axeDevTools ライブラリに接続します。 FAQ を参照して、ネットワーク要求なしで最適化されたパフォーマンスを提供するオフラインSDKの使用についての詳細を確認してください。
import axeDevToolsXCUI_noauth
import XCTest
class MyUITests: XCTestCase {
var axeDevTools: AxeDevTools?
override func setUpWithError() throws {
axeDevTools = AxeDevTools.loginWithLicenseKey("DEQUE_LICENSE_KEY")
...
}次にすることは?
プロジェクトを作成し、 axeDevToolsXCUI フレームワークを統合したので、 モバイルアプリをスキャンする準備が整いました。オプションとして、 設定をカスタマイズ して、スキャンに名前を付けたり、特定の結果を無視したり、カスタムルールを作成したり、スキャンにタグを付けたりすることができます。
