Skip to main content

test

Generate E2E and unit test code from requirements using Playwright, delegated to Codex. Use when writing tests, checking acceptance criteria coverage, or running /test. Use when this capability is needed.

Zur Installation springen

Quellinformationen

Repository
tomevault-io/skills-registry
Letzte Quellaktivität
28. April 2026 um 22:53
Erkannte Sprache von SKILL.md
Mehrsprachig
Sterne
0
Forks
0

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

Datei-Explorer
2 Dateien

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
test
description
Generate E2E and unit test code from requirements using Playwright, delegated to Codex. Use when writing tests, checking acceptance criteria coverage, or running /test. Use when this capability is needed.
metadata
{"author":"ai-driven-school"}
# /test スキル 実装コードと要件定義からテストコードを自動生成します。 ## 使用方法 ``` /test /test auth /test --e2e /test --unit ``` ## 実行フロー ``` [1] 要件定義の読み込み └─ docs/requirements/*.md(受入条件) [2] 実装コードの確認 └─ src/**/* [3] Codexに委譲 └─ codex exec "..." --full-auto [4] テストファイル生成 └─ tests/**/*.spec.ts ``` ## Codex委譲コマンド ```bash codex exec " 以下の受入条件を全てカバーするE2Eテストを生成してください。 【受入条件】 $(cat docs/requirements/{feature}.md | grep -A 100 '## 受入条件') 【テスト要件】 - Playwright使用 - 各受入条件に対応するテストケース - Happy path + Edge case - 適切なセレクタ(data-testid推奨) - 日本語でテスト名を記述 【テンプレート】 import { test, expect } from '@playwright/test'; test.describe('{機能名}', () => { test('{受入条件1}', async ({ page }) => { // Arrange // Act // Assert }); }); " --full-auto ``` ## 生成されるテスト構成 ``` tests/ ├── {feature}.spec.ts # E2Eテスト ├── {feature}.unit.spec.ts # ユニットテスト(オプション) └── fixtures/ └── {feature}.json # テストデータ ``` ## テストテンプレート ```typescript import { test, expect } from '@playwright/test'; test.describe('ユーザー認証', () => { test.beforeEach(async ({ page }) => { await page.goto('/login'); }); test('メールとパスワードでログインできる', async ({ page }) => { // Arrange await page.fill('[data-testid="email-input"]', 'test@example.com'); await page.fill('[data-testid="password-input"]', 'password123'); // Act await page.click('[data-testid="login-button"]'); // Assert await expect(page).toHaveURL('/dashboard'); await expect(page.locator('[data-testid="welcome-message"]')).toBeVisible(); }); test('無効なパスワードでエラーが表示される', async ({ page }) => { // Arrange await page.fill('[data-testid="email-input"]', 'test@example.com'); await page.fill('[data-testid="password-input"]', 'wrong'); // Act await page.click('[data-testid="login-button"]'); // Assert await expect(page.locator('[data-testid="error-message"]')).toHaveText( 'メールアドレスまたはパスワードが正しくありません' ); }); }); ``` ## 出力例 ``` > /test auth 🧪 テストを生成します... (Codex) 要件定義を読み込み中... ✓ docs/requirements/auth.md(受入条件: 5件) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 🚀 Codex (full-auto) でテスト生成中... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [Codex] tests/auth.spec.ts を作成中... ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ✅ テスト生成完了! 生成ファイル: → tests/auth.spec.ts テストケース: 6件 ✓ メールとパスワードでログインできる ✓ 認証成功時、ダッシュボードにリダイレクトされる ✓ 認証失敗時、エラーメッセージが表示される ✓ 空のフィールドでバリデーションエラー ✓ ログアウトでセッション終了 ✓ セッション切れでログイン画面にリダイレクト ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ テスト実行: npx playwright test tests/auth.spec.ts ``` --- > Converted and distributed by [TomeVault](https://tomevault.io/claim/ai-driven-school) — claim your Tome and manage your conversions. <!-- tomevault:4.0:skill_md:2026-04-16 -->
Auf GitHub ansehen