Power Platform Playwright サンプル は、すべての Power Platform アプリの種類に対して信頼性の高い保守可能なエンド ツー エンド テストを記述できるフレームワークを提供するオープンソース リポジトリです。 Microsoft Playwright 上に構築され、ページ オブジェクト モデル (POM) パターン、組み込みの認証ヘルパー、および Power Platform ランタイム専用に設計された再利用可能なコンポーネントを提供します。
Note
このフレームワークは、TypeScript、完全な IDE 統合、および直接 Playwright API アクセスを優先するチームに対して、Power Apps テスト エンジン の代替として推奨されるプレイライトネイティブです。
Power Platform Playwright サンプルの主な機能
Power Platform Playwright サンプルには、次の機能が用意されています。
-
統合アプリ起動ツール: 1 つの
AppProviderクラス は、一貫性のある API を使用して、キャンバス、モデル駆動型、または AI によって生成された任意のアプリの種類を起動します。 -
Page オブジェクト モデル: 事前構築された
ModelDrivenAppPage、CanvasAppPage、およびGenUxPageクラスは、テストが要件と同じように読み取ることができるように、高度なメソッドを公開します。 -
組み込みのグリッドコンポーネントとフォーム コンポーネント:
GridComponentとFormComponentは、複雑な AG グリッド を処理し、カスタム セレクターを使用せずに DOM 構造体を形成します。 - Dual-domain authentication: Storage 状態ファイルは、Power Apps ドメインと Dynamics 365/CRM ドメインの両方をカバーし、1 回取得してすべてのテストで再利用します。
- AI 支援オーサリング: Playwright MCP サーバーと統合されるため、GitHub Copilotや Claude などの AI コーディング アシスタントは、IDE でテストを直接生成、修正、説明できます。
- CI/CDに対応しています: GitHub Actions、Azure Pipelines、またはPlaywright互換環境でヘッドレス実行が可能です。
サポートされるアプリの種類
| アプリの種類 | ページオブジェクト | Description |
|---|---|---|
| キャンバス アプリ | CanvasAppPage |
Power Apps Studio に組み込まれているアプリ |
| モデル駆動型アプリ | ModelDrivenAppPage |
ビューとフォームを使用して Dataverse 上に構築されたアプリ |
| カスタム ページ | ModelDrivenAppPage |
モデル駆動型アプリに埋め込まれたキャンバス ページ |
| AI によって生成されたアプリ (Gen UX) | GenUxPage |
テスト フレームワークのしくみ
フレームワークは、次の 2 つのパッケージを含む ラッシュ モノレポです。
| Package | Description |
|---|---|
power-platform-playwright-toolkit |
ページ オブジェクト、コンポーネント、ロケーター、認証ヘルパーを含むコア ライブラリ。 このパッケージをローカルで参照します。 |
e2e-tests |
Northwind Traders ソリューションを対象とするサンプル テストを使用した参照実装。 この実装は出発点です。 |
フレームワークを使用するためにリポジトリを複製またはフォークします。 フル ソース アクセスを使用すると、すべてのセレクターとヘルパーを可視化し、ライブラリを環境に合わせて調整できます。
このフレームワークを使用する場合
必要な場合は、Power Platform Playwright サンプルを使用します。
- 完全な IDE サポートとタイプ セーフを備えた TypeScript ネイティブ テスト
- Playwright API (
page、locator、expect) への直接アクセス - クロスブラウザー テストの実行 (Chromium、Firefox、WebKit)
- Playwright MCP サーバーを使用した AI 支援テストの生成
- 既存の CI/CD パイプラインとの統合
Power Apps テスト エンジンとの比較
| 能力 | Power Apps テスト エンジン | Power Platform Playwright のサンプル |
|---|---|---|
| Language | Power Fx YAML | TypeScript |
| ランタイム | .NET | Node.js |
| IDE のサポート | Basic | 完全な VS コード /JetBrains |
| Authentication | 構成ファイル | 再利用可能なストレージの状態 |
| ページ オブジェクト モデル | No | Yes |
| AIオーサリング | No | はい (プレイライト MCP) |
| カスタム アサーション | 制限あり | 任意のPlaywright/Jestマッチャー |
| サポートされるアプリの種類 | キャンバス、モデル駆動型 | キャンバス、モデル駆動型、カスタム ページ、Gen UX |
次のステップ
- 作業の開始 リポジトリを複製し、最初のテストを実行する
- 認証の概要 認証状態を取得して再利用する方法を理解する
- AI 支援テストの概要 AI を使用してテストを生成および修正する