軟件測試 | Script Pipeline
Declared Pipeline 的入門學習難度相對不高,這種類似我們在做自動化測試時所接觸的關鍵字驅動模 式,只要理解其定義好的關鍵詞,按要求填充數(shù)據(jù)即可。
雖然這種方式入門容易,但靈活性欠缺。相比之下 script Pipeline 的好處就是靈活,好封裝,易于大規(guī) 模使用,但需要有一定的編程功底。
Script Pipeline 語句樹
一個 Script Pipeline 可以劃分成若干個 Stage,每個 Stage 代表一組操作,例如 Build,Test;Node 代 表 Jenkins 節(jié)點,比如 Master, Slave 這樣的節(jié)點;Step 是最基本的操作單元,在對應 Node 節(jié)點上執(zhí)行 的動作語句直接寫在 node {} 中。
Script Pipleline 語句樹

如同傳統(tǒng)的腳本語言一樣,Script Pipeline 是從上至下順序執(zhí)行,可以使用 Groovy 表達式進行流程控 制,如 if/else 語句通過邏輯條件判斷來對流程進行控制:
異常處理語句
Script Pipeline 腳本流程控制的另一種方式是異常處理機制。當任何一個步驟因各種原因而出現(xiàn)異常時, 都必須在代碼中使用 try/catch/finally 語句塊進行異常捕獲,并通過預先設定代碼進行處理,保證腳本能 夠順利執(zhí)行:
Jenkinsfile 中調用 plugin 功能
在 Jenkinsfile 中除了可以使用常規(guī)的邏輯、流程控制,還可以調用 Jenkins 的插件功能。下面用如下實 例進行說明。
Email Extension 插件
Email Extension 是 Jenkins 中的一個外部插件,用來發(fā)送郵件,從 Jenkins 的 Plugin Manager 中進行安 裝。在 Pipeline 中通過代碼調用可以觸發(fā)該插件的運行,實現(xiàn)發(fā)送郵件的功能。
基礎配置
在安裝好 Email Extension 插件之后,首先需要選擇一個準備用來發(fā)送 Jenkins 通知郵件的郵箱,發(fā)件郵 箱的具體參數(shù)要提前知曉(通常參數(shù)可以從郵箱的配置參數(shù)信息頁面上查到);之后要在 Manage Jenkins -> Configure System 中將對應參數(shù)填寫該插件的對應配置項中,必須配置的參數(shù)如下:
SMTP server:smtp 服務地址
SMTP port:smtp 端口號
Use SMTP Authentication:啟用 smtp 安全校驗
User Name:發(fā)件人用戶名
Password:發(fā)件人密碼
Default Recipients:默認收件人
其他的參數(shù)可以根據(jù)自己的需要進行配置,Email Extension 配置參考截圖如下:

Pipeline代碼