簡體   English   中英

如何從 Visual Studio 測試任務中設置 Azure DevOps 變量,以便以下內聯 PowerShell 腳本可以讀取它?

[英]How to set Azure DevOps variable from Visual Studio Test task so the following inline PowerShell script can read it?

我正在嘗試在 Visual Studio 測試任務期間在發布管道中設置 Azure DevOps 變量。 在 Visual Studio C# 測試代碼中,我想根據測試是否通過來設置 ADO Release 變量。 然后我將在下面的 Release 任務中讀入這個變量,一個內聯的 Powershell 腳本,以執行單獨的任務。

我曾嘗試在我的 C# Visual Studio 測試代碼中使用Console.WriteLine("##vso[task.setvariable variable=<VARIABLE_NAME>;]<VALUE>") ,但它沒有設置變量。 但是,當我使用內聯 Powershell 腳本使用Write-Host "##vso[task.setvariable variable=<VARIABLE_NAME>;]<VALUE>"設置變量時,它可以正常工作。

是否可以在 Visual Studio 測試任務中使用 C# 設置 ADO Release 變量? 還是只能使用 Batch/Powershell/Shell 腳本/任務設置變量? 如果是這種情況,是否有人對如何執行此操作有任何建議?

如何從 Visual Studio 測試任務中設置 Azure DevOps 變量,以便以下內聯 PowerShell 腳本可以讀取它?

確實,就像 jessehouwing 所說:

 vstest redirects the console output to the trx file.

因此,我們需要使用Logging Command來調用 logging 命令。

要解決此問題,您可以嘗試以下方法:

添加兩個內聯的 powershell 任務,根據前面任務的結果(包括 VS 測試任務)設置一個 ADO Release 變量:

在此處輸入圖像描述

然后添加另一個 powershell 任務來設置一個 ADO Release 變量,基於之前所有任務成功(包括 VS 測試任務)的結果。

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM