2017-07-11 4 views
3

VS 2017 EnterpriseをインストールしたTFS 2017 Update 2オンプレミスサーバーがあります。私たちのビルドには、Fakeアセンブリを含み、開発マシン上でローカルに動作するUnit-Testingプロジェクトが含まれています。 TFSのビルドは、ビルドが型または名前空間名「偽物」の名前空間 に存在しないTFS 2017はFakeターゲットを構築していません

で失敗 「Our.Product」(あなたはアセンブリ参照が不足している?)

(つまり、Our.Product.Assembly.Fakes.dllファイルの生成に失敗/失敗します)

私はさらに、hereとしてFakesを設定しました。

デバッグの冗長性を備えていてもビルドログにFakeという言葉がない(エラー自体とMSBuildがファイルを探すパスを除く)彼はイベントでFakeアセンブリを生成しようとしません。

他にも必要な手順はありますか? vNextのビルド定義を使用します。

更新: これは、/tv:15.0 /p:VisualStudioVersion=15.0でなく、になる前に動作するビルドステップです。

enter image description here

+0

XAMLビルドまたはvNextビルドを実行しているビルドはどれですか? –

+0

VS2017ビルドツールのインストールでは、偽のアセンブリは生成されません。この回答はhttps://stackoverflow.com/questions/44156571/msbuild-15-the-type-or-namespace-fakes-does-not-exist-in-the-namespace/44928697#44928697でご覧になれます。 – zionyx

+1

私たちはvNextを実行しています。 @ zionyx私はその答えを知っている、私はその質問にリンクしています。 – Lennart

答えて

3

更新

など/tv:15.0 /p:VisualStudioVersion=15.0などMSBuildの引数は、この問題を解決できるための最新バージョンを使用してください。


まず、リモートビルドエージェントにビルドサービスアカウントのRDPを使用して、手動でアセンブリが生成されたかどうかを確認するために、ビルドを実行してみてください。

これは、ビルドエージェント上の環境に関連する場合に絞り込みます。それがあなたのローカル開発マシンと同じであることを確認してください。

アセンブリも生成されている場合は、ビルド定義の設定に関連する可能性があります。正しいmsbuildバージョンを使用しているかどうかを確認してください。 vNextビルドについては、enable verbose Debug Modesystem.debug=true

+0

はい、リモートエージェント上のVSに手動でビルドするとビルドされます。前述したように、Fakeの生成には冗長なログには何も言及されていませんが、欠落しているDLLのエラーを除きます。 – Lennart

+1

@Lennart VSビルドまたはMsBuildタスクの設定を共有することができますので、私はそれを使ってテストを行うことができます。 '/tv:15.0/p:VisualStudioVersion = 15.0'のようなmsbuild引数の最新バージョンを使用してください。また、同じ設定で新しいビルド定義を作成し、プロジェクトを再度ビルドしてみてください。 –

+0

@Lennart、私はコマンドライン自体でビルドすることができます。 Fakeを生成する特別なパラメータはありません。ここに私の[ログ](https://developercommunity.visualstudio.com/content/problem/70229/fake-assemblies-are-not-generated-by-using-msbuild.html?childToView=76832#comment-76832)があります。 – zionyx

関連する問題