Power Apps テスト エンジンでの認証 (非推奨)

注意

テスト エンジンは非推奨 となり、今後のリリースで削除される予定です。 Power Platform および Dynamics 365 サービスのテスト自動化機能には、Power Platform Playwright サンプルを使用します。

Test Engine には、開発と運用の両方のシナリオをサポートする簡単な認証オプションが用意されています。 この記事では、認証の選択肢の概要と、ニーズに最適なオプションを選択する方法について説明します。

認証をシンプルに

Test Engine には、作成するテストの種類に応じて、使いやすい認証方法が用意されています。

Web ベースのテスト (キャンバス、モデル駆動型アプリ)

対話型ユーザー アカウントを使用してテストを実行する Web ベースのテストの場合。

StorageState (既定)

  • セキュリティで保護されたローカル ストレージWindows Data Protection API を使用する
  • 個別の開発とテストに最適
  • MFA と条件付きアクセスを自動的に処理します
  • 対話型の初回サインイン、その後は自動化
  • Webベースのキャンバスおよびモデル駆動型アプリテストに使用

Dataverse

  • X.509 証明書と ASP.NET Coreデータ保護を使用する
  • チーム環境やCI/CDパイプラインに最適
  • 暗号化されたトークンを Dataverse に格納する
  • 自動テスト用のサービス プリンシパルをサポート
  • Webベースのキャンバスおよびモデル駆動型アプリテストに使用

OAuth ベース テスト (Dataverse)

PowerFx プロバイダーとダイレクト Dataverse テストでは、認証の動作が異なります。 これらのテストでは、az コマンドを使用してAzure CLI セッションから直接アクセス トークンを取得し、リソース固有のアクセス トークンを取得します。 この種のテストを実行する前に、az login --allow-no-subscriptions でサインインしていることを確認してください。

各認証方法を使用するタイミング

次の表では、各認証方法をいつ使用するかについて説明します。

必要な場合は 選択 なぜそれが最も効果的か
すばやく開始する StorageState セットアップ不要で、テストを実行してサインインするだけ
MFA を使用してローカルでテストする StorageState すべての最新の認証方法を処理します
テスト ユーザーをチームで共有する Dataverse 一元化された安全な認証情報の保管
CI/CD パイプラインでテストを実行する Dataverse 非インタラクティブ、自動化に対応
サービス プリンシパルの使用 Dataverse セキュアなヘッドレス認証をサポート

StorageState 認証: クイック スタート

StorageState メソッドは、Windows Data Protection API を使用して、ブラウザー認証データをローカルに安全に格納します。 個人の開発者やテスターに最適です。

# StorageState is the default, so you don't need to set it using the --user-auth parameter
pac test run `
   --provider canvas `
   --test-plan-file testplan.yaml `
   --tenant your-tenant-id `
   --environment-id your-environment-id

Dataverse 認証: チーム対応

Dataverse メソッドは、X.509 証明書と ASP.NET Core Data Protection を使用して、暗号化されたトークンを Dataverse に格納します。 チームや自動化されたワークフローに最適です。

Dataverse 認証設定を設定する

  1. Test Engine ソリューションのダウンロード: https://aka.ms/TestEngineAuth
  2. ソリューションを Dataverse 環境にインポートする
  3. 証明書の設定 (自己署名または認証局からの証明書)
  4. 自動テスト用にサービス プリンシパルを構成する (オプションですが推奨)
# Example command with Dataverse authentication
pac test run `
   --provider canvas `
   --user-auth Dataverse `
   --auth Certstore `
   --test-plan-file testplan.yaml `
   --tenant your-tenant-id `
   --environment-id your-environment-id

次の手順

あなたに合った道を選びましょう。