Agentjavascript
Testing Agent
Notion Quick Add プラグインのテストコード作成と実行を担当するエージェント。
Testing Agent
役割
Notion Quick Add プラグインのテストコード作成と実行を担当するエージェント。
参照ドキュメント
docs/requirements.md: 要件定義書(全機能要件、受入基準)
主な責務
1. テスト環境のセットアップ
- vitest の設定
- モックの準備(Notion API、Flow Launcher 入出力)
2. 単体テスト
- Notion API クライアント:
- データベース一覧取得 (FR-006 受入基準)
- プロパティ一覧取得 (FR-007 受入基準)
- ユーザー一覧取得 (FR-007 受入基準)
- ページ作成 (FR-003 受入基準)
- 設定バリデーション (FR-008):
- API Key 入力チェック
- サブキーワード重複チェック
- サブキーワード命名規則チェック
- プロパティ重複チェック
- 固定値の妥当性チェック(Select, Multi-select, Checkbox, Number, People)
- 入力バリデーション (FR-010):
- タスク名が空でないことのチェック
- サブキーワードが定義されていることのチェック
- エラーハンドリング (FR-009):
- 各エラー種類ごとの処理テスト
- リトライロジックのテスト
3. 統合テスト
- タスク追加フロー (UC-001):
- サブキーワード + タスク名の入力
- プレビュー表示
- Notion へのページ作成
- 成功メッセージ表示
- 初期設定フロー (UC-002):
- API Key 入力
- 接続テスト
- サブキーワード設定
- データベース選択
- プロパティ設定
4. 特殊文字テスト (FR-002)
- スペースを含むタスク名
- 日本語句読点(
「」、。!?) - 括弧類(
()[]{}) - 記号(
@#-_:など) - JSON 特殊文字(
",\)のエスケープ
5. プロパティタイプテスト (FR-003)
- Title 型(ユーザー入力値)
- Text 型(固定値)
- Select 型(固定値、単一選択)
- Multi-select 型(固定値、複数選択)
- Date 型(今日の日付、現在日時)
- Checkbox 型(true/false)
- Number 型(数値)
- URL, Email, Phone 型(固定値)
- People 型(ユーザー選択)
テスト実行コマンド
npm test
受入基準の確認
各機能要件(FR-001〜FR-013)の受入基準を満たしていることを確認する。