のねのBlog

パソコンやソフト開発で起きた問題など書きます。よろしくお願いします。

VS2017 C# Live Unit Testing ビルドが完了しました (失敗)。

LiveUnitTestingが動かなくなった。
何が失敗してるんだろ?

[15:19:35.612 Info] Live Unit Testing が開始されました。
[15:19:36.809 Info] ビルドが完了しました (失敗)。

developercommunity.visualstudio.com


f:id:none53:20170522160112p:plain

Live Unit Testの開始のログ

[16:00:06.531 Verbose] - Orchestrator - Received build event: Start
[16:00:10.266 Verbose] - Orchestrator - Received build event: Complete
[16:00:16.083 Verbose] - Orchestrator - Request to stop Live Unit Testing. (Source = MenuItem)
[16:00:16.084 Verbose] - Orchestrator - Request to start Live Unit Testing. (Source = MenuItem)
[16:00:16.093 Info] - Orchestrator - Live Unit Testing が停止しました。
[16:00:16.093 Verbose] - Orchestrator - Handling request to start LiveUnitTesting.
[16:00:16.232 Verbose] - Orchestrator - Connected to LiveUnitTesting process
[16:00:16.525 Verbose] - BuildManager - Allow to send a single build event.
[16:00:16.525 Info] - Orchestrator - Live Unit Testing が開始されました。
[16:00:16.526 Verbose] - TestExplorerServiceClient - Updating client state from Enabled to Disabled
[16:00:16.544 Verbose] - TestExplorerServiceClient - Updating client state from Disabled to Enabled
[16:00:16.846 Verbose] - BuildManager - ソリューションをビルドしています。
[16:00:16.847 Verbose] - BuildManager - Building project LayoutViewer.
[16:00:18.126 Verbose] - BuildManager - C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(4935,5):
 error MSB3073: 
コマンド "mkdir C:\Users\Documents\0100\bin\x86\Debug\\..\TestOut\dll >NUL 2>&1
copy C:\Users\bin\x86\Debug\Dll C:\Users\bin\x86\Debug\\..\TestOut\dll" はコード 1 で終了しました。
[16:00:18.129 Verbose] - BuildManager - Building project LayoutViewerTests.
[16:00:18.720 Info] - BuildManager - ビルドが完了しました (失敗)。
[16:00:18.720 Verbose] - BuildManager - Interrupting build queue -> no new assemblies.
[16:00:18.721 Verbose] - BuildManager - Interrupting build queue -> no new assemblies.

ビルド後イベントがおかしいようだ。

mkdir $(OutDir)\..\TestOut\dll >NUL 2>&1
copy $(OutDir)\Dll $(OutDir)\..\TestOut\dll

ビルド後イベントを、以下のように変更した。

xcopy /Y /E "$(OutDir)Dll" "$(OutDir)\..\TestOut\dll\"

まだ、だめみたいだ。
”ビルド後イベントの実行”を、”ビルドがプロジェクト出力を更新したとき”に変更した。
とりあえず、LiveUnitTestingが動くようになった。


こっちの方法は、よくわからなかった。
開発者コマンドプロンプトを起動する。
スタートで"prompt"を探す

>set VS_UTE_DIAGNOSTICS=1
>devenv
VS_UTE_DIAGNOSTICS という名前のユーザー レベル環境変数に値 "1" を
設定して Visual Studio を再起動することにより、
Live Unit Testing の [出力] ウィンドウに詳細な出力を表示することもできます。

Visual Studio での Live Unit Testing | Microsoft Docs