先決條件#
已安裝並執行 Jenkins(建議 v2.0 或更新版本)
Jenkins 主機上已安裝 Node.js v16 或更新版本
安裝 Jenkins#
Jenkins 是一款自動化建置工具,可協助開發者在軟體開發過程中自動化建置流程、測試與部署應用程式。以下是在 Linux 系統上安裝 Jenkins 的方法:2.
將 Jenkins 來源新增到 APT 軟體來源清單:
安裝完成後,開啟網頁瀏覽器並輸入 http://localhost:8080 或 http://{your_public_IP}:8080 以存取 Jenkins 儀表板。主控台提供 Web API,讓你管理與設定 Jenkins 服務。為 Jenkins 設定 Node.js 環境#
在執行 Apidog CLI 之前,你需要確保 Node.js 版本號為 v16 或更新版本,因此需要先在 Jenkins 環境中設定 NodeJS 相依項。
1.
開啟 Jenkins 外掛管理並找到 NodeJS 外掛,安裝後重新啟動。
2.
在全域工具設定中建立新的 NodeJS,設定版本號(需要 v16 或更新版本)以及套件名稱 apidog-cli。
如果已在 Jenkins 主機上安裝 apidog-cli,且你想直接在 Node 環境中執行任務,可以參考下圖中的 Node 設定,並填入主機的 Node 路徑。你可以使用以下兩種方法在 Jenkins 中觸發 Apidog 自動化測試:1.
在視覺化管線(Freestyle Project)中新增設定
執行 CLI 命令#
以視覺化方式設定管線#
開啟 Apidog,並從持續整合詳情頁面取得 CLI 命令。如果你的 Jenkins 環境可以存取網際網路,可以選擇使用「即時執行線上資料」命令。如果無法存取網際網路,則需要先將 CLI JSON 資料檔匯出到環境中,然後透過 CLI 執行。在專案設定頁面中,找到 Build Environment 區段,勾選 "Provide Node & npm bin/ folder to PATH" 選項,並選擇你在 Global Tool Configuration (Tools) 區段中設定的 NodeJS 版本(例如 nodejs18)。設定好建置環境後,前往 Build Steps 區段,點擊 Add build step,並選擇 Execute Shell(如果你使用的是 Windows 系統,請選擇 Execute Windows Batch Command)。將 Apidog CLI 命令貼到 Command 輸入框中,並儲存設定。你可以在「Build History」中查看建置進度與結果。將嵌入式程式碼整合到管線中#
前往 CI/CD 分頁並複製嵌入式程式碼片段,然後將其貼到你的 Jenkins 設定檔中。只需將程式碼直接貼到 Jenkins pipeline 設定中,即可將其嵌入你現有的 CI/CD 工作流程。這裡提到的 nodejs18 是指先前設定的 NodeJS 別名——請將其替換為你的實際別名。此外,請務必將程式碼中的變數 $APIDOG_ACCESS_TOKEN 替換為你的實際存取權杖。或者,你也可以在 Jenkins 的 Dashboard → Manage Jenkins → System 下新增名為 APIDOG_ACCESS_TOKEN 的環境變數,並將其值設定為你的存取權杖。這可讓 pipeline 在執行期間讀取你的存取權杖。你可以移除用於安裝 Apidog CLI 的指令碼,藉此簡化上述程式碼。如此一來,每次執行建置時就不需要重新安裝 apidog-cli,可同時減少建置時間與資源消耗。這之所以可行,是因為 NodeJS 和全域 npm 套件(即 apidog-cli)已事先在 Global Tool Configuration (Tools) 下完成設定,確保建置過程中可立即使用所需工具。使用 Jenkins 發佈報告#
在命令中指定產生的報告名稱 ${JOB_NAME}_${BUILD_NUMBER}(Jenkins 內建變數)。使用 HTML Publisher 外掛來查看報告。