Back to list
Tomodo1773

test-creator

by Tomodo1773

LangGraph AIエージェントを搭載したパーソナライズされたLINEチャットボット。Azureサービス(FastAPI + Cosmos DB)を活用した文脈認識型会話機能を備え、ユーザープロファイル、ウェブ検索、会話履歴に基づいたカスタマイズされた応答を提供します。一貫したキャラクターパーソナリティを維持しつつ、自然で適応性の高い対話を実現します。

0🍴 0📅 Jan 18, 2026

SKILL.md


name: test-creator description: テストコードを作成する際に使用します。ユニットテスト、統合テスト、エンドツーエンドテストなど、あらゆる種類のテストコードを生成するためにこのスキルを利用してください。

テストコード作成スキル

このスキルは、テストコードを生成するためのガイドラインと手順を提供します。

テストの実装方針

基本方針

  • 過剰なカバレッジは追わず、維持可能で実用的なテストを優先する
  • 正常系を中心に実装し、必要最小限の異常系を追加する
  • 純粋なロジック部分のみをテスト対象とする(ビジネスロジック、ユーティリティ関数など)
  • 外部API(OpenAI/Azure OpenAI、Spotify、Google Drive、LINE等)は実呼び出しする場合のみテストし、環境変数がなければ pytest.skip で飛ばす
  • Cosmos DBやStorageなどのインフラ依存は原則テストしない(接続もモックもしない)
  • 共通のセットアップが必要な場合は conftest.py にまとめる(現状は未使用)

サービス単位の注意点

  • リポジトリは src/api, src/func, src/mcp の3サービス構成。テストは対象サービスのディレクトリで実行する(例: cd src/api && uv run pytest
  • 各サービスで必要に応じてフィクスチャを追加する(現状は monkeypatch 等の標準的なものを使用)

外部APIの扱い

  • 外部APIは実呼び出しを行う(OpenAI/Azure OpenAI、Spotify、Google Drive等)
  • 必要な環境変数がない場合は pytest.skip で飛ばす
  • 例: if not os.getenv("OPENAI_API_KEY"): pytest.skip("OPENAI_API_KEY environment variable not set")
  • モックは使わず、実際の動作確認を重視する

データベースと状態管理

  • Cosmos DBやStorageは原則テストしない
  • DBに依存しない純粋なロジック部分のみをテスト対象とする
  • モックエージェントやダミークラスを使ってロジックを検証する(例: test_digest_reorganizer.py 参照)

実装手順(推奨ワークフロー)

  1. 変更対象のサービスディレクトリで既存テストを確認する(uv run pytest -q
  2. 純粋なロジック部分を抽出してテスト対象を明確にする
  3. 外部API呼び出しが必要な場合は、環境変数チェックと pytest.skip を実装する
  4. 作成したテストをローカルで実行・修正する(uv run pytest <test_file>

注意点

  • テストは uv run pytest で実行する(uv ラッパーはこのリポジトリの実行方針に準拠)
  • DBやインフラ依存は避け、純粋なロジックのみをテストする
  • 外部API呼び出しが必要な場合は環境変数チェックと pytest.skip を必ず実装する

このガイドに沿ってテストを実装してほしい。具体的なテストファイルの雛形や、既存テストの修正が必要なら手を入れるので知らせてください。

Instructions

  1. 方針確認

    • 上の「テストの実装方針」を読み、対象サービス(src/api / src/func / src/mcp)に合わせて進める
    • 純粋なロジック部分のみをテスト対象とする
    • DB依存部分はテストしない
  2. 既存テストの確認

    • 同じサービス内の既存テストを確認し、パターンを踏襲する
    • 例: test_crypto_utils.py(ロジックテスト)、test_spotify_search.py(API実呼び出し)
  3. テスト計画と実装

    • 何を検証するか(ユーティリティ関数、ビジネスロジック等)を明確化する
    • 外部API呼び出しが必要な場合は環境変数チェックと pytest.skip を実装する
    • DB依存を避け、モックエージェントやダミークラスを使う(例: test_digest_reorganizer.py
  4. 実行と検証

    • 対象サービスディレクトリで依存を固定してからテストを実行する:
cd src/api       # または src/func, src/mcp
uv sync --frozen
uv run pytest -q

問題があれば修正し再実行する

Score

Total Score

70/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

+10
説明文

100文字以上の説明がある

+10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon