2

Azure で Visual Studio Team Services 用のカスタム ビルド サーバーを作成しようとしています。ビルド エージェントと Visual Studio Express を実行中の仮想マシンにインストールし、「デフォルト」プールのビルド エージェントとして VisualStudio.com のプロジェクトに接続しました。

ただし、ビルドを実行しようとすると、次のエラーが発生しました。

No agent found in pool 1 which satisfies the specified demands:
msbuild
visualstudio
vstest
Agent.Version -gtVersion 1.98.1

MSBuild はすでに visualstudio.com の機能リストに含まれていましたが、他の 2 つには含まれていなかったため、次の 2 つの機能を調べてリストにC:\Program Files (x86)追加しました。

vstest: C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
visualstudio: C:\Program Files (x86)\Microsoft Visual Studio 14.0

その後、少なくともビルドは実行されますが、「アセンブリのテスト」ステップで別のエラーが発生します。Unable to determine the location of vstest.console.exeエラーメッセージの最も重要な部分は、とにかくここに完全にあると思います:

System.Management.Automation.CmdletInvocationException: Unable to determine the location of vstest.console.exe ---> System.IO.FileNotFoundException: Unable to determine the location of vstest.console.exe
at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.InvokeVSTestCmdlet.GetVsTestLocation()
at Microsoft.TeamFoundation.DistributedTask.Task.Internal.PowerShell.InvokeVSTestCmdlet.ProcessRecord()
at System.Management.Automation.CommandProcessor.ProcessRecord()
--- End of inner exception stack trace ---
at System.Management.Automation.Runspaces.PipelineBase.Invoke(IEnumerable input)
at System.Management.Automation.PowerShell.Worker.ConstructPipelineAndDoWork(Runspace rs, Boolean performSyncInvoke)
at System.Management.Automation.PowerShell.Worker.CreateRunspaceIfNeededAndDoWork(Runspace rsToUse, Boolean isSync)
at System.Management.Automation.PowerShell.CoreInvokeHelper[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
at System.Management.Automation.PowerShell.CoreInvoke[TInput,TOutput](PSDataCollection`1 input, PSDataCollection`1 output, PSInvocationSettings settings)
at Microsoft.TeamFoundation.DistributedTask.Handlers.PowerShellHandler.Execute(ITaskContext context, CancellationToken cancellationToken, Int32 timeoutInMinutes)
at Microsoft.TeamFoundation.DistributedTask.Worker.JobRunner.RunTask(ITaskContext context, TaskWrapper task, CancellationTokenSource tokenSource)

vstest.console.exe上記で指定したフォルダーを見て、そこにあります。vstestこのフォルダーをシステムに追加しようとしましたPATHが、違いはありません。

Azure で動作するビルド エージェントを設定するにはどうすればよいですか?

4

4 に答える 4

1

Visual Studio Express にはテスト ツールがありません。Visual Studio コミュニティ (ライセンス条項に基づいてコミュニティの資格があると仮定)、またはユーザーまたは組織がライセンスを取得している Visual Studio エディション (プロフェッショナル/エンタープライズ) をインストールします。

于 2016-07-16T15:54:54.137 に答える
0

解決策を見つけました。実際にVSがインストールされていることをビルドマシンに納得させる必要があります。リンクから:

私にとってうまくいったのは、次のレジストリ キーを作成することでした: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\14.0

そのキー内で、名前が ShellFolder で値が C:\Program Files (x86)\Microsoft Visual Studio 14.0 の文字列型の新しい値を作成します。

それが役に立てば幸い

于 2016-12-12T23:41:04.553 に答える
0

ビルド サーバーに Visual Studio をインストールする必要があります。その時点で、ビルド エージェントは のような利用可能な機能を認識しますmsbuild, visualstudio, and vstest

于 2016-07-16T14:45:47.317 に答える