目錄git
CI(Continuous Integration)持續集成,CD(Continuous Delivery) 持續交付web
一、分支偏離主幹服務器
二、未知項目進度maven
三、發現bug較晚gitlab
四、定位問題複雜單元測試
1.二進制包準備下降風險:靜態代碼分析,儘早發現bug測試
2.自動化:自動化編譯、自動化測試、自動部署、自動審查、自動反饋ui
3.隨時發佈url
爲了提升代碼質量已經每次發佈到beta環境服務的穩定性,要提升自動化測試覆蓋率(不只限於接口自動化測試)插件
流程圖以下:
一、當git lab上有代碼向dev_test分支發起merge請求,觸發自測環境的jenkins sonar掃描;
二、sonar掃描--針對dev_test分支;
三、單元測試--針對dev_test分支;
四、構建自測環境,並運行自測環境--針對dev_test分支;
五、執行接口自動化測試;
六、接口自動化測試經過後,在自測環境中進行功能測試、新增接口測試,並將新增測試點新增到自動化測試案例庫中。
一、當git lab上有代碼向dev分支發起merge請求,觸發jenkins sonar掃描;
二、sonar掃描--針對dev分支
三、單元測試--針對dev分支
四、構建自測環境,並運行自測環境--針對dev分支
五、執行接口自動化測試;
六、接口自動化測試經過後,將測試經過的dev分支發佈並部署到beta環境。
一、使用gitlab webhooks
二、URL處輸入構建的url地址,需增長token信息;
http://jenkins.cn/view/decision/job/decision-sonar/build
三、Secret Token 輸入jenkins中需由gitlab merge請求觸發的工程中配置身份令牌
四、提交merge請求,觸發流程
一、新建jenkins項目
新建sonar掃描、單元測試、構建、自動化測試、beta環境構建五個項目。
二、配置meta data
三、新建pipeline視圖
四、設置CI初始項目名稱
五、CI初始項目設置依賴關係.注意:依賴關係必定要順序執行,避免造成環形依賴
六、設置預警聲音(可自定義聲音,音頻格式的文件爲wav格式,而且將音頻文件打包好給葉柄添加到jenkins服務器上便可)
七、Sonar掃描項目配置
mvn clean org.jacoco:jacoco-maven-plugin:prepare-agent
mvn sonar:sonar
八、單元測試項目配置
-Dmaven.test.skip=false
九、自動化項目配置
http://jenkins.puhuitech.cn/view/decision/job/puhui-decision-autotest/
十、發送測試報告
1)、安裝jenkins插件,Editable Email Notification
2)、選擇構建後操做,Editable Email Notification;
3)、Project Recipient List:輸入收件人的郵箱地址,收件人之間使用逗號隔開;
4)、Default Subject:郵件主題
5)、Default Content:郵件內容自定義
預熱內容--使用Groovy腳本新建pipeline流程
一、新建一個項目類型爲Pipeline的jenkins工程
二、配置groovy腳本
三、pipeline 模板腳本生成
四、pipeline進程查看
五、jenkins 2.0建自動化構建之pipeline語法: