購買 SonarQube 作為測試自動化的質(zhì)量門由琳達陳在 2017年4月13日 |4分鐘閱讀1SonarQube (原名聲納) 被廣泛用于各種項目的代碼質(zhì)量管理工具, 提供跟蹤和提高源代碼質(zhì)量的功能。此類功能還可用于測試自動化, 以量化測試腳本的質(zhì)量, 因為自動檢測腳本的本質(zhì)是代碼。
測試自動化的 SonarQube 特性
為不同的利益相關(guān)者提供定制的度量標準每個項目都有不同的利益干系人, 如客戶、項目經(jīng)理、架構(gòu)師、開發(fā)人員和測試人員, 他們擁有完成項目的各種技術(shù)或知識。因此, 他們對項目質(zhì)量的關(guān)注是多種多樣的。不同群體的利益干系人的質(zhì)量度量標準是不同的, 這為查看 SonarQube 的價值提供了一個良好的環(huán)境, 因為該工具為不同的用戶提供了定制的度量標準。 下表顯示了針對不同項目角色的 SonarQube 質(zhì)量度量的一個很好的示例。
支持項目的多種編程語言盡管用 java 編寫, SonarQube 可以在大約20多個不同的編程語言 (包括 java、Python、c/c++) 中分析代碼??梢宰詣訖z測到不同的編程語言, 并調(diào)用相應的語言分析器。因此, 即使目標測試腳本由多種不同的編程語言組成,sonarqube, 聲納仍然能夠跟蹤、分析和創(chuàng)建有關(guān)代碼質(zhì)量的報告。
使用行業(yè)標準 (代碼分析器) 提供測試規(guī)則在更大的圖片中, SonarQube 提供了行業(yè)規(guī)則模板, 用戶可以根據(jù)需要自定義質(zhì)量規(guī)則。對于自動測試, 可以應用一堆規(guī)則。下面提供了示例規(guī)則:
除了檢查現(xiàn)有項目的源代碼, 為了進行自動測試, 聲納可能需要根據(jù)某些要求停用或更新一些規(guī)則。
示例規(guī)則可以刪除, 如下所示:
示例規(guī)則可以更新如下:
除了上面給出的特性, SonarQube 還具有諸如 DevOps 集成、聚合儀表板、時間機器等功能, 所有這些都可以幫助測試自動化項目變得更具可追溯性和可見性。
如何通過與數(shù)據(jù)庫 mysql 的集成來設置 SonarQube
設置 SonarQube 是很簡單的。但是, 不建議將嵌入在 SonarQube 中的默認數(shù)據(jù)庫 H2 用于生產(chǎn)用途, 因為它無法進行縮放。 為了更好的維護和可伸縮性, 我們建議用 mysql 這樣的另一個數(shù)據(jù)庫替換 H2。下面是在 windows 平臺中為 SonarQube 設置 mysql 的一個示例。
前提
在您的計算機上安裝 Java (Oracle JRE 8 開始或 OpenJDK 8 起)。步驟:
1.Install. 用 mysql 建立數(shù)據(jù)庫
a. 從 ?并安裝, 然后啟動 mysql
b. 為聲納創(chuàng)建數(shù)據(jù)庫, 包括創(chuàng)建用于訪問數(shù)據(jù)庫的管理員帳戶。例如, 通過在 sql 下運行, 使用用戶帳戶聲納和密碼聲納創(chuàng)建名為聲納的數(shù)據(jù)庫:










Ansible SonarQube 升級的角色
你可能知道, 并希望使用 SonarQube。這是一個偉大的工具, 是積極的發(fā)展和改善。這是偉大的, 如果你是一個開發(fā)使用 SonarQube。但是, 如果您碰巧管理 SonarQube 實例, 則由于升級指南由11步驟組成, 因此不斷升級非常麻煩。
停止舊的 SonarQube 服務器
并解壓新的 SonarQube 分布在一個新鮮的目錄, 讓我們說 NEW_SONARQUBE_HOME
使用默認的 H2 數(shù)據(jù)庫啟動它, 并使用更新中心安裝您需要的插件
手動安裝任何自定義插件
停止新服務器
更新聲納的內(nèi)容. 屬性和包裝. 配置文件位于 NEW_SONARQUBE_HOME/配置目錄中, 其內(nèi)容與 OLD_SONARQUBE_HOME/配置目錄中的相關(guān)文件 (web 服務器 URL、數(shù)據(jù)庫設置等) 有關(guān)。不-粘貼舊文件
如果使用了自定義 JDBC 驅(qū)動程序, 請將其到 NEW_SONARQUBE_HOME/擴展/jdbc 驅(qū)動程序/
備份數(shù)據(jù)庫
刪除數(shù)據(jù)/es 目錄
啟動新的 web 服務器
http://localhost:9000/setup (用您自己的 URL 替換 'localhost:9000') 來瀏覽并按照安裝說明進行操作
這是一個太多的步驟, 手動執(zhí)行。因此, 我決定通過為它編寫一個 Ansible 的角色來實現(xiàn)自動化。
初始設置
在我開始編寫 Ansible 劇本之前, 我需要找到一種方法來測試我的代碼。所以我開始與流浪漢旋轉(zhuǎn)了一個虛擬機, 并提供了一個簡單的腳本。這是需要有類似的環(huán)境, 以我們的實際 SonarQube 生產(chǎn)實例。我能夠增量地構(gòu)建我的 Ansible 劇本并在這個 VM 上測試它。很快我就明白了, 與流浪漢一起工作會減慢我的速度, 因為我需要重置環(huán)境, 而不是的預期。所以我決定考慮泊塢窗。
用于測試的泊塢窗
我找到了正式的 SonarQube 泊塢窗圖像, 但無法使用,中國sonarqube安全審計, 因為我們的 SonarQube 實例安裝在 CentOS 和官fang圖像使用不同的基礎圖像。另外, 我需要自定義特定的 SonarQube 版本我想開始。因此, 我創(chuàng)建了我們自己的 Dockerfile 與 CentOS 6 基地和 Ansible 安裝。
此泊塢窗映像不需要啟動 SonarQube, 因為我只是想驗證是否進行了正確的文件更改,中國sonarqube 中文, 而我的 Ansible 手冊沒有錯誤。升級的第yi步之一就是關(guān)閉服務器。
我將我的劇本裝入容器, 并在該容器內(nèi)運行 Ansible, 對該本地環(huán)境進行了更改。
當前腳本的路徑
TESTS_DIR = $ (cd '$ (dirname' $ {BASH_SOURCE [0]} ')' & & 密碼 '
# 命令測試劇本
TEST_COMMAND = 'cd/行動 & & ansible-劇本 $ @
-我 ' 本地主機 '-c
升級-聲納 database.yml '
# 運行容器安裝行動為卷
泊塢 run-v '$ TESTS_DIR/.。/行動/:/行動 '
'聲納-升級-測試'/'垃圾/bash-c' $ {TEST_COMMAND} '
在泊塢窗中運行我的劇本大大減少了反饋回路, 所以我決定泊塢窗是走的路。你可以看看我所有的腳本在 GitHub
Ansible 角色
我一步一步地往前走, 我到達了一個點, 一切似乎都在工作, 我有一個非常有用的 Ansible 的角色在我的手中。它尚未發(fā)布到 Ansible Galaxy, 但您可以在 GitHub 的 SonarQube 升級 Ansible 角色項目下找到源文件和文檔。
當前 Ansible 角色通過在當前位置旁邊創(chuàng)建新安裝來升級 SonarQube。這提供了回滾的方法 (如果需要)。
此時, 角色執(zhí)行以下任務:
確保特定的根用戶存在于聲納安裝
在所有安裝所在的目錄中創(chuàng)建聲納. sh
確保 SonarQube 服務存在
停止 SonarQube
新版本
備份數(shù)據(jù)庫
和安裝插件
將自定義配置應用于新實例
確保刪除數(shù)據(jù)/es
重新 SonarQube 服務啟動新版本
開始 SonarQube
手動步驟
這個過程仍然需要幾個手動步驟。
在運行升級手冊之前, 應手動確保在升級過程中要安裝的插件列表是xin的。您可以從 SonarQube 的管理視圖中獲得xin支持的版本號。
根據(jù) SonarQube 的建議, 此 Ansible 角色不僅以前安裝的配置, 而且使用帶有變量的模板來為新實例創(chuàng)建配置。這意味著在執(zhí)行升級之前, 開發(fā)人員可以將模板和基本配置與新的 SonarQube 進行比較。雖然這是一個手動步驟, 但與以前的操作相比,代理商sonarqube開源代碼質(zhì)量管理軟件, 它更容易, 因為可以使用 IDE 而不僅僅是從命令行中的 diff 工具進行比較。
這兩個步驟都需要后續(xù)的手動升級, 我認為這些升級準備活動。




SonarSource
在這些更復雜的環(huán)境中, 組織必須做更多的事情。
競爭環(huán)境, 資源很少和/或減少。他們必須彌合 everincreasing
它與業(yè)務的新形式的社會參與之間的差距, 并抗衡
隨著更多的要求創(chuàng)新的應用程序, 滿足業(yè)務和
消費者的需求。
企業(yè)項目在激烈的壓力下的水平和率
技術(shù)變化要求部門協(xié)同工作, 包括業(yè)務干系人
和跨 IT、開發(fā)、質(zhì)量和運營的管理人員, 以便在競爭中生存。
正如我們看到的組織轉(zhuǎn)向復雜的采購, 以解決這些業(yè)務和
技術(shù)需求, 我們看到了對軟件分析、自動化和通用過程的需求
通過.對于 IDC 來說, 復雜的采購意味著利用外部服務提供商的資源
(如陸上和近海 SIs), 來自商業(yè)、IT、基礎設施的內(nèi)部資源,
承包商, 并使用開源軟件 (OSS) 解決方案和組件。
需要建立伙伴關(guān)系和使用一系列資源, 要求管理、自動化、
和質(zhì)量的協(xié)調(diào)。代碼質(zhì)量的可見性成為關(guān)鍵, 有助于提高
行為, 以產(chǎn)生更好的軟件和地圖團隊的適當類型的項目給
經(jīng)驗水平和執(zhí)行 (即使機會成為教育團隊
更有效地執(zhí)行)。服務提供商和內(nèi)部員工都需要 '他們的游戲' 與
關(guān)于軟件的創(chuàng)建、適當?shù)馁|(zhì)量和缺陷的積壓。'技術(shù)債務' 只能
識別和解決, 如果它是可見的, 可以通過適當?shù)淖詣踊ぞ邌⒂煤?/p>
過程策略的采用和分析, 以了解影響。
這一 IDC 技術(shù)聚焦將討論改進軟件分析方法的必要性,
缺陷管理、安全和度量, 通過主動可見性來獲得業(yè)務和 IT 好處。
那些不懂歷史的人注定要重蹈覆轍;這句諺語也適用于無效
軟件創(chuàng)建、質(zhì)量和缺陷緩解和解決方法。
不斷變化的質(zhì)量觀
隨著企業(yè)越來越依賴于技術(shù)和軟件來提供產(chǎn)品,
CIO 的工作正在轉(zhuǎn)變。預算沒有增加, 但業(yè)務期望它能夠
在高度復雜的環(huán)境中比以前更快地交付新的業(yè)務價值
提高了對質(zhì)量的期望。此外, 有一種期望, 它會變得更清楚
新的業(yè)務目標, 并將 IT 優(yōu)先級與之相匹配。一個關(guān)鍵的挑戰(zhàn)是如何使
更快地交付更高質(zhì)量的應用程序, 以滿足業(yè)務和客戶需求。它, 并
cio 必須超越提高 IT 效率以實現(xiàn)業(yè)務創(chuàng)新, 并提供
具有持續(xù)部署和改進的軟件實踐的客戶體驗。和一個
基本的構(gòu)建模塊是代碼分析和管理。
缺乏對代碼質(zhì)量的可見性, 以及導致問題的代碼更加明顯
和更多的削弱企業(yè)現(xiàn)在由于能見度和曝光要求
移動和其他面向客戶的應用程序。這已經(jīng)成為高管們的問題,
那些在代碼創(chuàng)建級別的組織。
開發(fā)和提供高質(zhì)量的軟件版本和新的面向客戶的應用程序
時間是一個越來越大的挑戰(zhàn), 特別是對于那些必須與復雜的
與遺留系統(tǒng)和資源相結(jié)合的現(xiàn)代技術(shù)網(wǎng)絡。組織必須
解決內(nèi)部業(yè)務的需求-企業(yè)應用程序的擴展和可用性
移動/社會/云平臺-以及滿足客戶/消費者對可用性的需求
創(chuàng)新的應用。然而, 如何做到這一點, 而不提供洞察問題, 因為它們是
無意中創(chuàng)建的?
可以做些什么來提高整體軟件質(zhì)量以減少問題和風險, 同時
加快發(fā)布周期, 使新的服務和產(chǎn)品更快地投放市場?這
要求對軟件漏洞和缺陷進行有效和早期的管理, 以使
主動的質(zhì)量戰(zhàn)略和降低成本。然而, 如何才能減輕現(xiàn)有的不良行為
hao完成這些目標?






溫馨提示:以上是關(guān)于代理商sonarqube開源代碼質(zhì)量管理軟件-華克斯(推薦商的詳細介紹,產(chǎn)品由蘇州華克斯信息科技有限公司為您提供,如果您對蘇州華克斯信息科技有限公司產(chǎn)品信息感興趣可以聯(lián)系供應商或者讓供應商主動聯(lián)系您 ,您也可以查看更多與行業(yè)專用軟件相關(guān)的產(chǎn)品!
免責聲明:以上信息由會員自行提供,內(nèi)容的真實性、準確性和合法性由發(fā)布會員負責,天助網(wǎng)對此不承擔任何責任。天助網(wǎng)不涉及用戶間因交易而產(chǎn)生的法律關(guān)系及法律糾紛, 糾紛由您自行協(xié)商解決。
風險提醒:本網(wǎng)站僅作為用戶尋找交易對象,就貨物和服務的交易進行協(xié)商,以及獲取各類與貿(mào)易相關(guān)的服務信息的平臺。為避免產(chǎn)生購買風險,建議您在購買相關(guān)產(chǎn)品前務必 確認供應商資質(zhì)及產(chǎn)品質(zhì)量。過低的價格、夸張的描述、私人銀行賬戶等都有可能是虛假信息,請采購商謹慎對待,謹防欺詐,對于任何付款行為請您慎重抉擇!如您遇到欺詐 等不誠信行為,請您立即與天助網(wǎng)聯(lián)系,如查證屬實,天助網(wǎng)會對該企業(yè)商鋪做注銷處理,但天助網(wǎng)不對您因此造成的損失承擔責任!
聯(lián)系:tousu@tz1288.com是處理侵權(quán)投訴的專用郵箱,在您的合法權(quán)益受到侵害時,歡迎您向該郵箱發(fā)送郵件,我們會在3個工作日內(nèi)給您答復,感謝您對我們的關(guān)注與支持!