4. セットアップ¶
Accel Studio テスト機能 は、 iAP とは別に、Accel Studio テスト機能 テスト実行エージェント を用意する必要があります。
項目
4.1. エージェントの実行環境について¶
4.1.1. 必要なネットワーク環境¶
Accel Studio テスト機能 テスト実行エージェント は、アプリケーションサーバと通信します。そのため、アプリケーションサーバとインストールされた端末との通信が可能であることを確認してください。
4.1.2. 利用されるブラウザ¶
Accel Studio テスト機能 は、Playwright を利用してテストを実行します。テストの実行は Chromium で行われます。
4.1.3. エージェントの実行環境OS¶
エージェントは、 intra-mart Accel Platform の「クライアント要件」の種別PCでの利用をサポートしています。利用するクライアント環境に合わせたOS上でエージェントを起動してください。
コラム
エージェントは、サーバ要件の環境でも動作を確認しています。
テスト実行環境は、クライアント要件に合わせることを推奨しますが、 iAP サーバと別環境が用意できない場合、サーバ環境に構築も可能です。
サーバ要件は、「 システム要件 」を確認してください。
4.2. テスト機能API実行者へのロールの付与¶
Accel Studio テスト機能 テスト実行エージェント とアプリケーションの通信を行うユーザとして、テスト機能API実行者を設定します。設定されたユーザでAPIキーを発行を行い、テストの結果登録、ログインの解決などアプリケーションサーバとの通信を担当します。ロールには、テストを実行する上で必要となるテスト機能のREST APIに対する認可が設定してあります。
- 「Accel Studio テスト機能 API実行者」ロール
4.3. APIキーの取得¶
Accel Studio テスト機能 API実行者」ロールを持つユーザで、OAuth APIキーを取得してください。下記のスコープでOAuth APIキーを取得してください。Playwright でのテスト実行時に、このOAuth APIキーを利用して通信します。OAuth APIキーは、後続手順のエージェントの実行時に、引数として利用します。
- im-accel-studio-testing-execution
- im-workflow-rest
取得手順は、「API キーを発行する」を参照ください。
4.4. 設定ファイルの変更¶
設定ファイル の下記を変更してください。Accel Studio テスト機能 は、開発環境や検証環境での利用を想定しています。そのため、本番環境で Accel Studio テスト機能 を利用しない場合、testing-enabledをfalseとすることで、テスト実行が動作不可にできます。
- testing-enabled
- agent base-url
設定ファイル の下記でテスト定義画面からリソースをアップロードする際のサイズ制限を行うことができます。環境に応じて設定を変更してください。テスト実行中のキャプチャ取得、定義のインポート時等、上記操作以外の処理は制限の対象外です。
- resource-size-limit
- resource-total-size-limit
4.5. エージェントの実行¶
4.5.1. エージェントの実行環境へ Playwright の準備¶
Playwright のモジュールとブラウザデータを、Accel Studio テスト機能 テスト実行エージェント の実行環境へ配置します。Node.js が利用できる環境で、下記のコマンドにより、モジュールの圧縮ファイルを取得してください。
- npm pack @playwright/test@1.50.1
下記のコマンドにより、ブラウザデータを任意のディレクトリにダウンロードしてください。
npx cross-env PLAYWRIGHT_BROWSERS_PATH="xxx" npx playwright@1.50.1 install --with-depsex) npx cross-env PLAYWRIGHT_BROWSERS_PATH="C:\Playwright" npx playwright@1.50.1 install --with-deps
コラム
Accel Studio テスト機能 テスト実行エージェント の実行環境がインターネットに接続できない場合、上記手順を別端末で実施してください。
取得したファイル一式を、Accel Studio テスト機能 テスト実行エージェント の実行環境に配置することで対応できます。
ただし、インストールされるブラウザデータはOS毎に異なるため、実行環境と同等のOSでブラウザデータを取得する必要があります。
4.5.2. エージェントのダウンロード¶
Accel Studio テスト機能 テスト実行エージェント は、「プロダクトファイルダウンロード」よりダウンロードしてください。ダウンロードには、ライセンスキーが必要です。
4.5.3. エージェントの起動¶
Accel Studio テスト機能 テスト実行エージェント は、実行可能jar形式で同梱しています。jarファイルを配置した各端末にて、以下の手順を実施し、エージェントを起動してください。
Java JDKをインストールします。(JDKバージョン:intra-mart Accel Platformのシステム要件に準拠)
「accel_studio_testing_agent-8.x.x.jar」を任意のフォルダに配置します。
jarファイルを配置したフォルダにて、以下のコマンドを実行し、エージェントを起動します。java -Dimbq.ast.agent.oauth-api-key="Oauth APIキー" -Dimbq.ast.agent.testing-target-base-url="iAP URL" -Dimbq.ast.agent.script-playwright-package-path="Playwrightモジュール配置パス" -Dimbq.ast.agent.playwright-browsers-path="ブラウザデータ配置パス" -jar accel_studio_testing_agent-8.0.0.jar エージェントが起動すると、リクエスト受付の待機状態が始まります。アプリケーションサーバからのリクエストを受信すると、Accel Studio テスト機能 が自動的に起動され、シナリオが実行されます。
コラム
エージェントの起動時に、以下の表のシステムプロパティをJavaの引数として -Dxxx=xxx 形式で指定可能です。
次のコマンドのように、引数は -jar よりも前に指定してください。
下記は任意のOauth APIキー、PlaywrightのモジュールとブラウザデータをC:/playwrightに配置した場合のコマンド例です。
java -Dimbq.ast.agent.oauth-api-key=NjI0NWQ3ZjhlYjM3NDhiODkxMWU4YzBiZjUyYjVhNzdAZGVmYXVsdA -Dimbq.ast.agent.testing-target-base-url=http://127.0.0.1:8080/imart/ -Dimbq.ast.agent.script-playwright-package-path=C:/playwright/playwright-test-1.50.1.tgz -Dimbq.ast.agent.playwright-browsers-path=C:/playwright -jar accel_studio_testing_agent-8.0.0.jar
プロパティ名 | デフォルト値 | 必須 | 意味 |
---|---|---|---|
imbq.ast.agent.oauth-api-key | なし | 〇 | OAuth APIキー |
imbq.ast.agent.testing-target-base-url | http://127.0.0.1:8080/imart/ | 〇 | iAP のベースURL |
imbq.ast.agent.script-playwright-package-path | なし | 〇 | 使用する Playwright のモジュール配置先ファイルパス |
imbq.ast.agent.playwright-browsers-path | なし | 〇 | Playwright で使用するブラウザデータ配置先ディレクトリ |
imbq.ast.agent.script-playwright-config-path | なし | ー | Playwright 用設定ファイル |
server.port | 8188 | ー | エージェントのポート番号 |
logging.file.name | accel_studio_testing_agent.log | ー | 出力ログファイル名 |
logging.level.root | INFO | ー | 出力ログレベル |
コラム
Playwright 用設定ファイルについて
設定ファイルを配置することで、Playwright の動作を調整できます。
設定値は、Playwright の公式サイト( https://playwright.dev/docs/test-configuration#expect-options や https://playwright.dev/docs/test-use-options)を参考にしてください。
下記は、タイムアウト時間と Visual Regression Test の画像比較にて、異なる可能性のあるピクセルの許容量をデフォルト設定から変更、またテスト実行時の画面収録とスクリーンショットの取得を設定した例です。
import { PlaywrightTestConfig } from '@playwright/test'; const config: PlaywrightTestConfig = { name: 'custom-config', timeout: 50000, globalTimeout: 100000, use: { video: 'on', // テスト実行時の画面録画をテスト結果として取得するオプションです。 screenshot: 'on', // テスト終了時やエラー発生時の画面キャプチャをテスト結果として取得するオプションです。 }, expect: { toMatchSnapshot: { maxDiffPixelRatio: 0.02, maxDiffPixels: 200 }, toHaveScreenshot: { maxDiffPixelRatio: 0.02, maxDiffPixels: 200 }, }, }; export default config;