SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商
SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商

SonarQube技術支持-正版購買-培訓-安裝-使用-價格-中國代理商

價格

訂貨量(套)

面議

≥1

聯系人 汪洋

䀋䀔䀐䀐䀏䀍䀏䀐䀍䀒䀔

發貨地 陜西省西安市
進入商鋪
掃碼查看

掃碼查看

手機掃碼 快速查看

在線客服

商品參數
|
商品介紹
|
聯系方式
品牌 1
型號 1
貨號 12
上市時間 3
軟件類型 3
充值卡類型 3
支持用戶數 3
商品介紹


通過SonarQube 搭建代碼質量管理平臺(一)的介紹,如果每次都需要手動執行 sonar-scanner ,想想也是醉了,所以我們需要進一步完善 SonarQube 進行自動化代碼分析。

從官方文檔的Scanners部分可以看出,Scanner 支持 MSBuild、Maven、Gradle、Ant、Jenkins 等。本文將介紹使用 Jenkins 進行自動化代碼分析, 測試項目的代碼基于 .NET 開發,所以會用到 MSBuild 相關命令。

安裝 Jenkins

根據操作系統下載 Jenkins,我使用的是 Windows ,直接都下一步就可以了。

Windows 環境下 Jenkins 安裝后默認登錄身份是 “本地系統”,會無法訪問,所以需要修改登錄身份,我這里使用的是賬戶方式

Jenkins 登錄身份

啟動成功后訪問http://localhost:8080/

Jenkins 配置 Github

在 Github 生成 Personal access tokens,設置 token 相關權限

access token

access token scope

Jenkins 配置 GitHub Server

Jenkins 安裝后默認已包含 GitHub,在 “系統管理” => “系統設置” 中找到 Github,然后在 Credentials 處添加全局憑據,類型選 Secret text,Secret 處輸入上一步生成的 access token

GitHub Server

Secret text

添加完成后可點擊 Test connection 進行測試

如果使用的是 Gitlab,需要在 Jenkins 中安裝 Gitlab 插件,全局憑據添加 GitLab API token,token 使用 Gitlab Account 下的 Private token, 其他配置基本類似

Jenkins 配置 SonarQube

在 SonarQube 中生成 Server authentication token

登錄 SonarQube 后,在 “My Account” => “Securiy” 中生成 toekn

SonarQube token 重新進入這個頁面之前生成的 token 就看不到的,只能看到一次,我呵呵

在 Jenkins 的管理插件中安裝 SonarQube Scanner 插件

配置 SonarQube Sever,這部分和配置 GitHub Server 類似,在 “系統管理” => “系統設置” 中找到 SonarQube serversName:隨意;Server URL:為啟動的 SonarQube 服務地址,我這里使用本地啟動的默認地址http://localhost:9000;Server authentication token:輸入之前生成的 token;

SonarQube server

配置 SonarScanner for MSBuild

在 “系統管理” => “全局工具配置” 找到 SonarScanner for MSBuild(測試項目是基于 .NET),官方提供了.NET Framework 和 .NET Core兩個版本,我們可以先都加上,之后根據實際項目選擇使用哪個。有兩中方式配置 MSBUILD_SQ_SCANNER_HOME,可以選擇自動安裝或手動配置,手動配置需要單獨下載,我使用的是手動配置方式


SonarScanner for MSBuild Jenkins 任務配置

上面是 Jenkins 的一些全局配置,下面需要對單個任務進行配置。新建一個 “構建一個自由風格的軟件項目” 類型的任務 “Test”

配置項目的倉庫地址,這個項目就是要進行代碼分析的項目,在 Credentials 處添加憑據,這里添加一個用戶名密碼類型的憑據(其他類型的也可以,能訪問這個倉庫即可)。在添加憑據后,會自動檢測是否有效,如果無效會直接出現錯誤提示

Task Config

Username with password

在 “構建” 中增加構建步驟:

Build steps

SonarScanner for MSBuild - Begin Analysis

SonarScanner for MSBuild:選擇基于 .NET Framework,因為 Test 項目是基于 .NET Framework;Project key:在 SoanrQube 中的項目 key;Project name:在 SoanrQube 顯示的項目名稱,如果不填,則顯示 Project key;Project version:版本號;Additional arguments:其他參數,比如可以設置只檢測某種語言(/d:sonar.language=cs)、排除哪些文件(夾) 等,參考;

執行 Windows 批處理命令

先通過 nuget restore(如果沒有安裝 nuget 命令的需要提前安裝)還原依賴的 NuGet 包,然后使用 MSBuild 批處理命令重新生成項目。這一步 Build 可能會出現各種奇葩的問題,主要就是少了一些依賴包,建議在安裝 Jenkins 的機器安裝上 VS,然后將 MSBuild 加入環境變量,我的機器添加了兩個路徑:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\MSBuild\15.0\Bin C:\Program Files (x86)\NuGet

SonarScanner for MSBuild - End Analysis

連續檢查

SonarQube支持連續檢查實踐。

在構建SonarQube平臺時,我們從一開始就考慮了持續檢查。因此,它附帶了支持該實踐所需的一切,質量門,泄漏管理,分支分析,并行報告處理,治理功能,高可用性,較短的反饋循環等。

SonarQube連續代碼質量檢測

SonarQube連續代碼質量檢測


質量

SonarQube提供了GO / NO-GO門以促進應用程序推廣。

質量門是SonarQube的一個重要的開箱即用功能。它提供了在每次分析時知道應用程序是否通過或未通過發布標準的能力。換句話說,它在每次分析時都告訴您應用程序是否“按質量”準備好進行生產。


語言

我們的解決方案涵蓋25種以上的編程語言。

通過提供對多種語言的支持,包括Java,C#,C / C ++,T-SQL,TypeScript,JavaScript和COBOL,SonarQube提供了一個涵蓋大量應用程序的獨特解決方案。

SonarQube連續代碼質量檢測


插件

SonarQube連續代碼質量檢測

SonarQube體驗可以通過插件來增強。

SonarQube提供了60多個社區和商業插件,可輕松使用其他語言,指標和頁面來增強您的體驗。還可以開發插件來滿足組織內的特定需求。


優點

我們為整個開發組織增值。

無論您在開發組織中的角色如何,SonarSource解決方案都可以增加價值,因為我們擁有您需要的最先進功能,以最大限度地提高質量并管理軟件產品組合中的風險。


對于開發人員

軟件開發人員最終對代碼質量負責。

代碼質量是所謂的非功能性需求的一部分,因此是開發人員的直接責任。因為代碼質量不應該推遲到以后,所以我們的解決方案在開發過程的每個步驟(從IDE到發行版)(包括任何中間促銷活動)中都提供反饋。

這使開發人員可以就代碼質量做出早期且受過良好教育的決策,使他們能夠做得更好,并交付更好的軟件。

SonarQube連續代碼質量檢測

SonarQube連續代碼質量檢測


用于DevOps

DevOps團隊需要確保正確構建軟件。

DevOps團隊負有許多責任。其中包括支持開發過程,自動化測試,確保質量,提高生產率……并最終實現持續部署。良好的代碼質量是實現所有這些目標的必要條件,盡管還不夠。我們的解決方案提供了可在任何構建/測試/部署步驟中添加的代碼質量收費門。

這使devOps團隊可以自動執行一組質量標準,從而確保組織交付更好的軟件。


對于高管

SonarSource解決方案可降低風險并提高團隊生產力。

管理人員需要能夠安全地操作軟件,并且其成本能夠證明投資回報是合理的。我們的解決方案使高管一目了然,他們面臨的運營風險以及緩解風險的成本。它也具有開箱即用的功能,可以系統地提高可維護性,從而提高開發團隊的長期生產力。

這使高管可以使用風險控制方法以最佳成本確保其組織交付更好的軟件。

SonarQube連續代碼質量檢測

配置完成后保存,然后點擊 “立即構建” 試試效果,構建成功后我們將通過 SonarQube UI 看到對 Test 項目的分析結果

Analysis result

這就實現了將 Jenkins 與 SonarQube 關聯起來,代碼構建完成后會把結果發送到 SonarQube 中,我們還可以根據需要在 Jenkins 任務中設置構建執行時間,比如每天早上9點執行一次

Trigger time

SonarQube 中有Webhook的功能,當接收到一次提交,可以將這次的分析結果發送給設置的 Webhook 地址,這樣我們可以通過消息(比如短信、郵件、微信等)將有問題的分析結果及時的通知到相關負責人。



聯系方式
公司名稱 西安青穗信息技術有限責任公司
聯系賣家 汪洋
手機 䀋䀔䀐䀐䀏䀍䀏䀐䀍䀒䀔
地址 陜西省西安市