初めて Visual Studio のテスト ツールを検討する
Visual Studio のテスト ツールを使用することで、チームと共に高水準の優れたコードを開発し、維持できます。
Note
単体テストは、Visual Studio のすべてのエディションで使用できます。 その他のテスト ツール (Live Unit Testing や IntelliTest など) は Visual Studio Enterprise エディションでのみ使用できます。 エディションの詳細については、Visual Studio IDE の比較に関するページを参照してください。
テスト エクスプローラー
[テスト エクスプローラー] ウィンドウは、開発者が単体テストを作成、管理、実行する場合に役立ちます。 Microsoft 単体テスト フレームワークまたは複数のサードパーティ フレームワークやオープン ソース フレームワークの 1 つを使用できます。
Visual Studio は拡張可能であり、NUnit や xUnit.net などのサード パーティの単体テスト アダプターにも対応します。 さらに、コード クローン機能では、一般的なバグの修正またはリファクタリングの対象になる可能性がある意味的に似たコードのブロックを特定できるようにして、高品質なソフトウェアを提供することもできます。
ライブ単体テスト
Live Unit Testing は、バックグラウンドで自動的に単体テストを実行し、Visual Studio のコード エディターにコード カバレッジとテスト結果をグラフィカルに表示します。
Note
ライブ単体テストは Enterprise Edition でのみ使用でき、.NET コードでのみサポートされています。
IntelliTest
IntelliTest は、マネージド コードの単体テストとテスト データを自動生成します。 IntelliTest によって、対象範囲が増え、新規または既存のコードの単体テストを作成および保守する手間を大幅に削減できます。
Note
IntelliTest は Enterprise Edition でのみ使用できます。 これは、.NET Framework を対象とする C# コードに対してサポートされています。 .NET Core と .NET Standard は現在サポートされていません。
コード カバレッジ
コード カバレッジは、プロジェクトのコードの中で、単体テストなどのコード化されたテストによって実際にテストされる割合を判断します。 バグから効果的に保護するには、コードの大部分を "カバー" するようにテストを実行する必要があります。
Note
コード カバレッジは Enterprise Edition でのみ使用できます。
コード カバレッジ分析は、マネージド コードにもアンマネージド (ネイティブ) コードにも適用できます。
コード カバレッジは、テスト エクスプローラーを使用してテスト メソッドを実行する場合のオプションです。 結果テーブルには、各アセンブリ、クラス、およびメソッドで実行されたコードの割合が表示されます。 また、ソース エディターには、どのコードがテストされたかが表示されます。
- コード カバレッジを使用した、テストされるコード割合の確認
- Visual Studio での単体テスト、コード カバレッジおよびコード クローン分析 (ラボ)
- コード カバレッジ分析のカスタマイズ
- Microsoft.CodeCoverage.Console ツール
Microsoft Fakes
Microsoft Fakes では、アプリケーションの別の部分をスタブまたは shim で置き換えることにより、テストするコードを分離できます。
Note
Microsoft Fakes は Enterprise Edition でのみ使用でき、.NET コードでのみサポートされています。
Playwright を使用したユーザー インターフェイスのテスト
Playwright は、汎用ブラウザーベースの UI テストの場合にお勧めします。
コード化された UI と Selenium によるユーザー インターフェイスのテスト
コード化された UI テストでは、アプリケーションのユーザー インターフェイスの機能と動作を検証するために完全に自動化されたテストを作成できます。 XAML ベースの UWP アプリ、ブラウザー アプリ、および SharePoint アプリなど、さまざまなテクノロジをカバーする UI テストを自動化できます。
Note
コード化された UI は非推奨の機能です。
最適に組み合わされたコード化された UI テストを選択する場合も、Playwright による汎用ブラウザー ベースの UI テストを選択する場合も、必要なすべてのツールが Visual Studio で提供されます。