測試 - Jenkins構建接口自動化腳本


about

centos7.4 + jenkins 2.263.1 + pytest + allure + github + Python3.6.8

本篇演示如何使用Jenkins來集成一個接口自動化腳本。
接口自動化腳本的GitHub地址:https://github.com/WZSwang/ATScripts.git

開始吧!

必要的環境配置

  1. Java環境
[root@cs ~]# java -version
openjdk version "1.8.0_275"
OpenJDK Runtime Environment (build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM (build 25.275-b01, mixed mode)
[root@cs ~]# ls /usr/lib/jvm/java-openjdk/    # 記住這個Java home 后續會用到
ASSEMBLY_EXCEPTION  bin  include  jre  lib  LICENSE  tapset  THIRD_PARTY_README
  1. git:
[root@cs ~]# yum install git -y
[root@cs ~]# git --version
git version 1.8.3.1
[root@cs ~]# ls /usr/bin/git     # 記住這個路徑, 后續也會用到
/usr/bin/git
  1. Jenkins安裝,參考:rpm安裝的Jenkins

Jenkins必要的配置

在正式構建一個freestyle的項目之前,還需要一些基本的配置和插件的安裝。

Allure Commandline安裝

參考:https://www.cnblogs.com/Neeo/articles/12767089.html#for-centos

Python環境配置

因為要跑的是Python的腳本,所以系統中還必須提前安裝好了Python環境。
參考:https://www.cnblogs.com/Neeo/articles/12829625.html#centos-7
注意,記得要配置軟鏈接,不然會出問題!

必要的插件下載

Manage Jenkins>Manage Plugins>Available,分別將allureEmail Extension Plugin這兩個插件下載好。


這兩個插件用來生成allure報告和發送郵件。

配置Java/git/Allure Commandline

Manage Jenkins>Global Tool Configuration下拉分別配置JDKGitAllure Commandline,最后配置完,別忘了點擊ApplySave


Jenkins在構建時,會使用這些。

配置憑據

因為我們的接口自動化腳本托管在GitHub上,Jenkins在構建腳本時,會自動地去GitHub上拉取代碼,這個過程中,需要憑據才能完成。
Manage Jenkins>Manage Credentials>Global credentials (unrestricted)


基本上,基礎配置就先配置到這里。

測試各環境是否好使

注意,Jenkins默認情況下執行shell腳本是使用非登錄方式,然而非登錄方式不會加載/etc/profile文件,所以,有些程序雖然配置好了/etc/profile,但依然不能正常的調用,這時候就要考慮配置軟鏈了。
構建一個freestyle的項目。來檢驗配置的環境是否好使。


關於項目的配置部分,常用的操作:

  • general,配置項目的描述信息,配置一些構建中的參數等等操作。
  • Source Code Management,源碼管理,從哪拉取代碼,配置憑據等。
  • Build Triggers,構建觸發器,你的項目如何運行?
    • 執行一次?
    • 輪詢執行?每天?每周?每月?參照Linux的定時任務配置。
  • Build Environment,構建環境,選擇項目的構建環境,如ant。
  • Build,構建,如何執行項目?shell命令?Windows終端命令?
  • Post-build Actions,構建后的操作,當項目完畢后,要做什么?生成相關報告?發送郵件?
    這里我們先對配置環境進行檢測,所以,直接選擇Build選項,由於是在Linux環境下構建項目,所以,選擇執行shell。

    在項目視圖下,點擊Build Now


    現在,可以正式開搞了!

關於接口自動化腳本的配置

通過之前的配置和測試,確定了環境沒有問題,現在可以針對接口自動化腳本進行配置了。
還是AT項目,在項目視圖下,選擇Configure進行配置。

General

因為這個接口自動化腳本執行完畢要生成allure報告,這里要選擇參數構建過程。
General部分我們提前配置好用到參數。

Source Code Management

在源碼管理中,配置以git的形式拉取代碼。

Build Triggers

略過

Build Environment

略過

Build

其中:

  • -v表示輸出詳細的執行信息。
  • --alluredir $ALLURE_RESULTS表示在pytest執行完畢后,將allure需要的json文件生成到$ALLURE_RESULTS指向的目錄內。

Post-build Actions

構建完成后,配置

現在,就可以保存嘗試構建一波了!

構建

項目視圖下,選擇Build with Parameters,進行構建,然后查看控制台輸出。

配置郵件

參考:https://www.cnblogs.com/Neeo/articles/12805815.html
當你整體配置完畢后,然后根據控制台輸出,排查一些錯誤,就得到了這樣一個allure報告:

感覺也還行,其他的數據也都有了。但是還有一些小瑕疵。我們往下看。

問題和優化

現在如果你的allure報告的Overview頁面,缺少環境信息等,你可能需要做些別的操作。

配置環境信息

如下圖,缺少一些環境信息。

想要添加一些環境信息,只需要在你的allure-results目錄下創建environment.properties或者environment.xml文件,將環境信息寫道文件中。
environment.properties

Browser=Chrome
Browser.Version=63.0
Stand=Production

environment.xml:

<environment>
    <parameter>
        <key>Browser</key>
        <value>Chrome</value>
    </parameter>
    <parameter>
        <key>Browser.Version</key>
        <value>63.0</value>
    </parameter>
    <parameter>
        <key>Stand</key>
        <value>Production</value>
    </parameter>
</environment>

然后重新構建項目就可以了。
現在,就有了:

參考:https://docs.qameta.io/allure/#_environment
當然,你也可以在構建過程中,使用命令來完成。
項目配置中的Build中:

#!/bin/bash

# 下載依賴模塊
pip3 install -i https://pypi.doubanio.com/simple/ -r requirements.txt

# 使用pytest執行腳本
python3 -m pytest -v --alluredir $ALLURE_RESULTS

# 就下面兩行,將依賴庫導出到environment.properties中,然后稍作替換就好了
pip3 freeze > $ALLURE_RESULTS/environment.properties
sed -i 's/==/=/g' $ALLURE_RESULTS/environment.properties


歡迎斧正,that's all,see also:

Jenkins - 構建Allure Report | 配置Jenkins郵件通知 | Jenkins+Pytest+Allure 集成測試環境 | jenkins配置郵件及增強版郵件通知 | jenkins 構建腳本標記為failure | (三)jenkins·統一配置 JDK、Maven、Git 等安裝位置


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM