私はユニットテストのためにFakesライブラリを使用するプロジェクトの自動ビルドとユニットテストを設定しようとしています。私のWindows 10 PC(VS 2017 Enterpriseがインストールされています)でプロジェクトが正常に構築され、テストされますが、同じコマンドを使用してビルドサーバー(VS 2017 EnterpriseのWindows 10)でプロジェクトをコンパイルするとFakeについてのいくつかのエラーが発生します。正確なエラーは次のようになります。これは、MSBuildのの古いバージョンを使用することによって引き起こされ、私の研究から、MSBuild 15 - タイプまたは名前空間 'Fakes'がネームスペースに存在しません
XControllerTests.cs(10,20): error CS0234: The type or namespace 'Fakes' does not exist in the namespace 'System.Data.Common' (are you missing an assembly reference?) [C:\Runner\builds\xxx\XTests.csproj]
、しかし私は、サーバーをチェックし、それは、Visual Studioの最新バージョン&の更新プログラムを持って確認していますインストールされます。また、ビルドスクリプトが正しいバージョンのMSBuild.exe(c:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\MSBuild.exe
)を使用していることも確認しました。デスクトップ上でこのバージョンを使用すると、プロジェクトが正しくコンパイルされます。
なぜビルドは(同じセットアップ)ビルドサーバーで動作しないのですか?
私は同じproblémを持っていますが、MSビルドツール2017をビルドサーバーで使用しています。 msbuildへのパスは、c:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ BuildTools \ MSBuild \ 15.0 \ Binです。 – McMlok