• Jenkins在自動化測試中的應用——軟件自動化測試入門攻略(9)

    發表于:2024-3-20 09:53

    字體: | 上一篇 | 下一篇 | 我要投稿

     作者:楊定佳    來源:51Testing軟件測試網原創

      15.6.2  Jenkins在自動化測試中的應用
      Jenkins作為一個持續集成工具,在自動化測試中非常有用,可以幫助測試人員對自動化測試項目實現定時執行、測試結果發送報告、分布式執行等功能,無須再投入太多的人工在項目運維環節,有利于減少重復過程以節省時間、費用和工作量。下面以運行一個簡單的測試腳本為例,創建一個Jenkins任務。
      準備測試腳本。新建一個test_jenkins.py文件,添加兩個測試用例test_01和test_02,其中test_01斷言成功,test_02斷言失敗,代碼如下:
      # chapter15\test_jenkins.py
      import pytest
      def get_student_info(student_id):
          students = {
              1001: {"name": "tynam", "age": "21"},
              1004: {"name": "yang", "age": "16"}
          }
          return students.get(student_id, "The student ID does not exist.")
      def test_01():
          student = get_student_info(1001)
          assert student.get("name") == "tynam"
      def test_02():
          student = get_student_info(1004)
          assert student.get("name") == "tynam"
      if __name__ == "__main__":
          pytest.main(["-s", "test_jenkins.py"])
      安裝SSH Agent插件。單擊Jenkins主頁左側菜單【系統設置】,然后選擇【插件管理】進入插件管理頁面。在【Available plugins】可選插件下搜索“SSH Agent”,勾選后單擊【Install】按鈕進行安裝,如圖15-28所示。
    圖15-28  安裝插件
      掛載本地節點。單擊Jenkins主頁左側菜單【系統設置】,然后選擇【節點管理】進入節點管理頁面。單擊【New Node】按鈕添加節點,【節點名稱】填寫“本地節點”,Type下選中【固定節點】,然后單擊【Create】按鈕創建,如圖15-29所示。
    圖15-29  創建節點
      節點配置。在節點配置頁面,【Number of executors】(此節點執行并發構建的最大數目)填寫2;【遠程工作目錄】(Jenkins在此節點下工作目錄)填寫D:\;【啟動方式】選擇通過Java Web啟動代理,然后單擊【保存】按鈕,如圖15-30所示。
    圖15-30  配置節點
      安裝curl程序。單擊“本地節點”進入該節點,可以看到提示需要在Node節點上安裝agent.jar文件并運行,如圖15-31所示。但是使用提示的命令安裝需要先安裝curl程序,curl是一個功能強大的命令行工具,可以用來發送HTTP請求、FTP請求等,并且支持各種數據傳輸協議。
    圖15-31  提示安裝agent.jar
      進入curl下載頁面(https://curl.se/download.html),根據操作系統下載二進制文件,Windows系統也可直接訪問https://curl.se/windows/下載,如圖15-32所示。
    圖15-32  下載curl
      下載完成后進行解壓,然后將~\curl-8.2.0_1-win64-mingw\bin目錄下curl.exe配置到環境變量中,即可全局使用curl程序。
      安裝agent.jar并啟動。根據圖15-31提示的命令依次輸入,例如Windows系統輸入命令為:
      curl.exe -sO http://localhost:8080/jnlpJars/agent.jar & java -jar agent.jar -jnlpUrl http://localhost:8080/computer/%E6%9C%AC%E5%9C%B0%E8%8A%82%E7%82%B9/jenkins-agent.jnlp -secret dd79934d1667ee467d5f05e660341578d595480136cfd81146ba52801eaa9f92 -workDir "D:/" 
      如圖15-33所示。
    圖15-33  安裝Agent并啟動
      Agent啟動后進入Jenkins節點列表,可以看到名為“本地節點”的節點已是連接狀態,如圖15-34所示。
    圖15-34  查看節點狀態
      創建任務。進入Jenkins主頁,單擊左側菜單欄中的【新建任務】創建測試任務,【任務名稱】填寫test_jenkins,選擇【Freestyle project】自由風格任務,然后單擊【確定】按鈕進入下一步,如圖15-35所示。
    圖15-35  創建項目
      設置任務運行節點。在【General】下勾選【限制項目的運行節點】,在輸入框中填寫節點名稱“本地節點”,如圖15-36所示。
    圖15-36  設置運行節點
      設置任務定時。在任務配置頁面【構建觸發器】下勾選【定時構建】復選框,然后填寫H/15 * * * *,表示每15分鐘構建一次,如圖15-37所示。
    圖15-37  設置任務定時
      定時構建字段遵循 cron 語法(但是與cron又略有不同),該字段每行包含5個字段,5個字段之間使用 TAB 或空格進行分隔。例如,* * * * *,第一個字段為MINUTE;第二個字段為HOUR;第三個字段為DOM;第四個字段為MONTH;第五個字段為DOW。具體描述如表15-1所示。
      表15-1  定時字段說明
      如果一個字段需要指定多個值,則可以按照優先順序使用下面的運算符: 
      ·*:指定所有有效值。 
      · M-N:指定范圍值。 
      · M-N / X或* / X:在指定范圍或整個有效范圍內以 X 步長進行指定。 
      · A,B,...,Z:列舉多個值。
      添加執行命令。在【Build Steps】下添加一個【執行Windows批處理命令】,即在Windows命令行工具中執行命令,然后單擊【保存】按鈕進入任務主頁。
      添加的命令如下:
      E:
      cd E:\xxxxxxx\code\chapter15
      python test_jenkins.py
      即進入test_jenkins.py文件所在的文件夾下,使用Python程序運行該文件,如圖15-38所示。
    圖15-38  添加執行命令
      任務構建。進入test_jenkins任務主頁,單擊左側菜單欄中的【立即構建】,可看到任務立即運行了一次,如果不手動觸發構建則根據設置的定時任務每15分鐘觸發一次。構建完成后,在test_jenkins任務主頁可以看到構建情況,如圖15-39所示。任務名稱前有個綠色對勾表示構建成功,如果最近一次構建失敗,則任務名稱前是紅色的叉叉。
    圖15-39  查看任務構建結果
      查看任務執行過程。單擊最近一次構建查看最新的構建情況,在構建頁面中單擊左側菜單欄中的【控制臺輸出】即為構建的詳細過程,如圖15-40所示?梢钥吹较惹袚Q到E盤,然后進入chapter15文件夾下,最后運行了test_jenkins.py測試文件。測試文件中共收集了2條測試用例,一條用例測試通過,一條用例測試失敗。
    圖15-40  查看構建過程
    版權聲明:51Testing軟件測試網獲得作者授權連載本書部分章節。
    任何個人或單位未獲得明確的書面許可,不得對本文內容復制、轉載或進行鏡像,否則將追究法律責
    《2023軟件測試行業現狀調查報告》獨家發布~

    關注51Testing

    聯系我們

    快捷面板 站點地圖 聯系我們 廣告服務 關于我們 站長統計 發展歷程

    法律顧問:上海蘭迪律師事務所 項棋律師
    版權所有 上海博為峰軟件技術股份有限公司 Copyright©51testing.com 2003-2024
    投訴及意見反饋:webmaster@51testing.com; 業務聯系:service@51testing.com 021-64471599-8017

    滬ICP備05003035號

    滬公網安備 31010102002173號

    久久97久久97精品免视_欧洲国产伦久久久久久_91麻豆精品国产自产在线观_伊人久久大香线蕉综合av