私のVS2010ソリューションにはテストプロジェクトが含まれています。単体テスト自体は、次の名前空間を参照します。
using Microsoft.VisualStudio.TestTools.UnitTesting;
私のPCの次のアセンブリからアクセスします。
Assembly Microsoft.VisualStudio.QualityTools.UnitTestFramework
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\
PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
PCでソリューションを構築するとき、問題はありません。テストは正常にビルドおよび実行されます。
ビルドサーバーでビルドを開始するために使用できるイントラネットページがあります。このページからビルドすると、ビルドは次のエラーで失敗します。
Generator.cs(3,17): error CS0234: The type or namespace name 'VisualStudio'
does not exist in the namespace 'Microsoft' (are you missing an Assembly
reference?)
明らかな問題は、Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
上記のビルドサーバーには存在しません。これはVS2010でインストールされると思いました。私のソリューションのプロジェクトは、.NET 4.0ターゲットをビルドするため、ビルドサーバーにインストールされると思います。
これを解決する最も簡単な方法は何ですか?ビルドサーバーは私の管轄外であり、新しいライブラリをインストールするジョブをログに記録したくありません。
.UnitTestFramework.dllはC:\ Program Files ...フォルダーにあり、参照があります。
その後、変更をチェックインして(Source/Binariesフォルダーがチェックインされていることを確認してください)、ソリューションをビルドできます。ビルドサーバーがソリューションをビルドするとき、ソース管理からdllを取得する必要があります。
私とVisualStudio2010ソリューションの具体的な答えは次のとおりです。