Visual C#2010 Expressには単体テスト機能がありますか?
更新として、私は現在Visual Studio Express for Desktop
を使用しています。VSスイートは2010年から完全にリモデルされており、「ビッグブラザー」をより正確に反映しています。
単体テストは組み込み機能として利用できるようになり、Visual Studio non-Expressと同じように機能します(すべての機能をテストしたわけではありません)。
何も組み込まれていませんが、nUnitをいつでも使用できます。
MSTestは、Proエディション以上にバンドルされています。
2010年には、外部アプリケーションを使用することも可能ですが、単体テストのデバッグは難しくなります。 NUnitを使用したデバッグがおそらく最善のルートです(ただし唯一のオプションではありません。 ExpressUnit を参照してください)。 this 回答を別のSOスレッドで参照してください。これは、テストプロジェクトをコンソールアプリケーションとして実行し、nunitを呼び出すことについて言及している blog にリンクしています。ライブラリdllを直接テストを起動します。
using System;
namespace RunTests
{
static class Program
{
[STAThread]
static void Main()
{
var args = new string[] { Assembly.GetExecutingAssembly().Location, "/run" };
NUnit.Gui.AppEntry.Main(args);
}
}
}
Visual Studio Expressエディションには、プラグイン/アドインが明示的に禁止されているという制限があります。組み込みのテストソリューションは付属しておらず、アドインすることはできません。
NUnit、mspecなどのスタンドアロンテストランナーを使用し、VSEから外部で実行するための最良/唯一のオプションです。
これはVisual Studio 2013 Expressに含まれるようになりました: http://msdn.Microsoft.com/en-us/library/dd264975.aspx
Test Explorerが表示されない場合は、Visual StudioメニューでTestを選択します、Windowsを選択し、次にTest Explorerを選択します。
プロジェクトでMain()メソッドを使用して追加のクラスをいつでもセットアップし、プロジェクトのスタートアップオブジェクトとして選択して、そこからデバッグすることができます。より多くのテスト固有の機能を利用できないため、より複雑なタスクが実行される状況では適切でない場合がありますが、一部の単純なプロジェクトでは役立つ場合があります。プロジェクトがクラスライブラリの場合は、コンソールアプリケーションに変換し、テストが終了したら元に戻すことを検討してください。
NHarness at codeplexを見てください。これは、テストプロジェクトでNUnitテストフィクスチャを実行できる非常にシンプルなライブラリです。これにより、必要に応じてユニットテストをデバッグできます。
テストランナーの例(codeplexページから)は次のとおりです
public class RunTests
{
public static void Main(string[] args)
{
TestResults results = Tester.RunTestsInClass<Tests>();
Console.WriteLine("Tests Run: {0}", results.NumberOfResults);
Console.WriteLine("Results {0}:PASSED {1}:FAILED", results.NumberOfPasses, results.NumberOfFails);
Console.WriteLine("Details:");
foreach (TestResult result in results)
{
Console.WriteLine("Test {0}: {1} {2}",
result.MethodName,
result.Result,
result.Result == TestResult.Outcome.Fail ? "\r\n" + result.Message : "");
}
Console.ReadLine();
}
}
このライブラリの利点は、TestResultsクラスを使用して、実行されたテストに関する情報を取得できるため、カスタムの単体テストアプリケーションでもライブラリを使用できることです。
(注:私はこの投稿が古いことを知っていますが、これは誰かを助けるかもしれません)
Andyが上記で投稿したように、 NUnit を使用できます。
しかし、Andyによって投稿されたリンクの設定は、VS C#2010では機能しなくなりました。
これは、[外部ツール]ウィンドウで使用する設定です。
コマンド:C:\ Program Files(x86)\ NUnit 2.6.2\bin\nunit-x86.exe
(binディレクトリにnunit.exeもあります)
引数:$(ProjectDir)$(ProjectFileName)
初期ディレクトリ:$(ProjectDir)bin/Debug/$(TargetName)$(TargetExt)