我使用Visual Studio團隊服務進行自動構建,並採用SonarQube顯示代碼質量,覆蓋面廣等我還使用私人託管生成代理。VSTS SonarQube找不到TRX文件
構建成功步驟中的所有工作,正在處理中,通過對SonarQube人口,這是偉大的數據。但是,SonarQube沒有顯示任何代碼覆蓋率。通過日誌在VSTS尋找後,我發現SonarQube正在尋找帶有.trx文件(其中包含的代碼覆蓋率)在不同的目錄到VSTS中帶有.trx文件發佈到一個。
所以當VSTS建立在這裏創建測試結果文件的解決方案:C:\ agent_work \ 3 \ S \ TestResults
但SonarQube嘗試使用測試結果從這裏:C:\ agent_work \ 3 \ TestResults
在構建服務器,如果我手動帶有.trx文件複製到正確的位置,然後再次運行生成的代碼覆蓋所有通過對SonarQube正常工作和過程。所以這個問題肯定是.trx發佈的位置和它被拾取的位置的不匹配。
我找不到改變的發佈位置的一種方式,或SonarQube源位置。
請幫忙!
**解決方法**:我在** Visual Studio Test **和** SonarQube for MSBuild - End Analysis **之間添加了一個**複製文件到**步驟到我的VSTS構建定義中。此步驟僅將文件複製到SonarQube步驟正在查找它們的位置。因此,在複製文件步驟中,像設置源文件夾= TestResults,Contents = **,TargetFolder = .. \ TestResults一樣簡單。並記住勾選清潔目標文件夾。 – Mike