.NET 用の GitHub Copilot テストは、Visual Studio に統合された GitHub Copilot Chat の新機能です。 この機能により、プロジェクト、ソリューション、ファイル、クラス、またはメンバー全体の C# コードの作成、実行、テストが自動化されます。 これは、すべてのテスト ケースを手動で記述することなく、包括的なテスト カバレッジをすばやくブートストラップする C# 開発者向けに設計されています。 GitHub Copilot テストでは、xUnit、NUnit、MSTest テスト フレームワークのテストを生成できます。
有効期間が短い Copilot の提案とは異なり、.NET 用の GitHub Copilot テストでは、コードベース全体でテストを生成および管理するためのガイド付きの長時間実行エクスペリエンスが提供されます。
[前提条件]
Visual Studio 2026 Insiders ビルド
C# プロジェクト
GitHub アカウント を使用して Copilot アクセス付きの Visual Studio にサインインします
GitHub Copilot テストは、個々のプランやエンタープライズ プランを含む、アクティブな GitHub Copilot サブスクリプションで動作します。 一部の機能は無料の Copilot ライセンスで利用できますが、特に大規模なソリューションや拡張セッションでは、使用制限とトークンの調整が適用される場合があります。 これらの制限は GitHub によって適用され、パフォーマンスや可用性に影響する可能性があります。
ヒント
最適なエクスペリエンスを得るために、潜在的な調整を回避し、一貫したアクセスを確保するために、有料の Copilot サブスクリプションを使用することをお勧めします。
GitHub Copilot テストでできること
この機能を有効にすると、GitHub Copilot テストは、いくつかの方法でソリューションと対話してテストを生成および検証します。
- 読む: Copilot は、ソース コードとプロジェクト構造を分析して、コンテキストと依存関係を理解します。
- 書く: 提案に基づいて、ソリューション内のテスト ファイルが作成または更新されます。
- 建てる: このツールはビルドをトリガーしてコードをコンパイルし、生成されたテストが正しく統合されていることを確認します。
- 実行する: テストを実行して合格を確認し、カバレッジと品質に関するフィードバックを行います。
Important
Copilot テストは、テスト生成プロセスの外部で運用コードを変更しません。 すべての変更はローカル開発環境内で行われ、提案を確認、受け入れる、または破棄するためのフル コントロールを保持します。
.NET に GitHub Copilot テストを使用する理由
.NET 用の GitHub Copilot テストは、テストの生成に関連するより基本的な Copilot 機能 ( /tests コマンドなど) と比較して包括的なエクスペリエンスを提供します。 GitHub Copilot for .NET の単体テスト機能には、次のものが用意されています。
- 効率: 大規模または小規模のプロジェクトまたはソリューションの C# 単体テストを自動的に生成、ビルド、実行します。
- 一貫性: テストがベスト プラクティスとプロジェクト標準に従っていることを確認します。 テストはソリューション内の別のテスト プロジェクトで作成され、xUnit、NUnit、MSTest フレームワークを使用して生成されます。 ソリューションに NUnit または xUnit に単体テストが既にある場合、.NET 用の GitHub Copilot テストでは、同じ単体テスト フレームワークで新しいテストが生成されます。 ソリューションに単体テストがない場合は、MSTest を使用して新しいテストが生成されます。
- 統合: Visual Studio 内でシームレスに動作し、Copilot の AI 機能を活用します。
- 予測: Copilot は、C# コンパイラと言語セマンティクスに根差して確定的にテストを生成しているため、アサーションとエッジ ケースは予測可能でタイプ セーフです。
主な機能
- 自動テスト生成: 1 つのファイル、1 つのプロジェクト内の複数のファイル、またはソリューション全体のテストを作成します。
-
コマンド ベースの操作: サポートされているコマンドとパラメーターを使用します (GitHub Copilot テストの
/helpメッセージに記載されています)。 - 構造化されたプロンプト: 現時点では、自由形式のプロンプトはサポートされていないため、予測可能で信頼性の高い出力が保証されます。
セキュリティの警告
初めて .NET 用の GitHub Copilot テストを実行すると、Copilot は LLM で生成されたコードをコンピューター上で実行するための同意を要求します。 これには、NuGet パッケージのインストールや復元、テストの実行などのアクションが含まれる場合があります。 一般的な同意を与えない場合、GitHub Copilot テストでは、そのような操作を実行する前に明示的な承認を求められます。
注意事項
同意すると、Copilot は Visual Studio セッション内で任意のコマンドをサイレントに呼び出すことができます。 Microsoft では、これらのコマンドの安全性を保証することはできません。 このスイッチは、サンドボックス環境内でのみ有効にする必要があり、その環境で使用できる特権を制限する手順を実行する必要があります。 たとえば、セキュリティで保護された環境では、クラウドに接続されたアカウントを使用して Windows にログインしないでください。また、非パブリック リポジトリへの読み取りアクセス権や運用リポジトリへの書き込みアクセス権を持つ特権を持つ GitHub アカウントを使用して、サンドボックス環境を Visual Studio にログインしないようにする必要があります。
トラブルシューティング
Copilot Chat に @test コマンドが表示されない場合は、次の手順を試してください。
Visual Studio ビルドを確認します。 この機能は現在 Insider でのみ使用できるため、最新の Visual Studio Insider ビルドを実行していることを確認してください。
[ツール] > [オプション] > GitHub Copilot の設定を切り替えます。 GitHub Copilot テスト設定を無効にしてから再度有効にすると、統合が更新されます。
@test コマンドがチャットに表示されず、切り替えた後も問題が解決しない場合は、Visual Studio のヘルプ >フィードバックの送信を使用して問題を報告してください。
次のステップ
Visual Studio の .NET 用 GitHub Copilot テストを使用したテストの生成と実行に関するページを参照してください。