mcpField
T
test-automation-framework

test-automation-framework

github.com/aj-geddesテスト・品質373501 回インストール34 週間前に更新
リポジトリ

test-automation-framework について

保守しやすい自動テストスイートを構成するためのスキルです。再利用可能なユーティリティ、テストデータ、設定、レポートのガイドを提供し、TypeScript の Playwright と Python の pytest を扱います。

主な機能

  1. 01再利用可能なテストユーティリティ
  2. 02テストフィクスチャとファクトリー
  3. 03複数環境の設定
  4. 04読みやすいテストレポート
  5. 05Page Object Model のガイド
  6. 06テスト構成のパターン

活用シーン

  1. 01新しい自動テストスイートの構築
  2. 02既存テストスイートの拡張
  3. 03チーム間のテスト規約の統一
  4. 04テスト準備コードの重複削減

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill test-automation-framework

インストール後、Claude Code で/test-automation-frameworkを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
configuration-management.md
custom-reporter.md
custom-test-utilities.md
page-object-model-playwrighttypescript.md
pytest-framework-python.md
test-fixtures-and-factories.md
test-organization.md
scripts/
scaffold-tests.sh
templates/
test-template.js

詳細

テスト自動化フレームワーク

目次

概要

テスト自動化フレームワークは、自動テストに構造、再利用性、保守性をもたらします。テストの整理、テストデータの管理、依存関係の処理、レポートの生成に関するパターンを定義します。適切に設計されたフレームワークは、重複を減らし、信頼性を高め、テスト開発を加速させます。

使用する場面

  • 新しいテスト自動化を設定するとき
  • 既存のテストスイートを拡張するとき
  • チーム間でテストの実践方法を標準化するとき
  • テストの保守負担を軽減するとき
  • テストの信頼性と速度を向上させるとき
  • 大規模なテストコードベースを整理するとき
  • 再利用可能なテストユーティリティを実装するとき
  • 一貫性のあるレポートを作成するとき

クイックスタート

最小限の動作例:

// framework/pages/BasePage.ts
import { Page, Locator } from "@playwright/test";

export abstract class BasePage {
  constructor(protected page: Page) {}

  async goto(path: string) {
    await this.page.goto(path);
  }

  async waitForPageLoad() {
    await this.page.waitForLoadState("networkidle");
  }

  async takeScreenshot(name: string) {
    await this.page.screenshot({ path: `screenshots/${name}.png` });
  }

  protected async clickAndWait(locator: Locator) {
    await Promise.all([
      this.page.waitForResponse((resp) => resp.status() === 200),
      locator.click(),
    ]);
  }
}
// ... (see reference guides for full implementation)

リファレンスガイド

references/ ディレクトリにある詳細な実装:

ガイド内容
ページオブジェクトモデル(Playwright/TypeScript)ページオブジェクトモデル(Playwright/TypeScript)
テストフィクスチャとファクトリーテストフィクスチャとファクトリー
カスタムテストユーティリティカスタムテストユーティリティ
構成管理構成管理
カスタムレポーターカスタムレポーター
pytest フレームワーク(Python)pytest フレームワーク(Python)
テストの整理テストの整理

ベストプラクティス

✅ 推奨事項
  • UI テストにはページオブジェクトモデルを使用します
  • 再利用可能なテストユーティリティを作成します
  • 適切な待機戦略を実装します
  • テストデータにはフィクスチャを使用します
  • 複数の環境に対応するように構成します
  • 読みやすいテストレポートを生成します
  • 機能/種類ごとにテストを整理します
  • テストフレームワークをバージョン管理します
❌ 避けるべきこと
  • ページオブジェクトにテストロジックを記述しないでください
  • ハードコードされた待機(sleep)を使用しないでください
  • テストのセットアップコードを重複させないでください
  • テストデータとテストロジックを混在させないでください
  • エラー処理を省略しないでください
  • テストの不安定さを無視しないでください
  • 過度に複雑な抽象化を作らないでください
  • 環境の URL をハードコードしないでください

コメント