使用Gatling進行性能測試(一)Gatling初識&使用maven創建Gatling項目

引言

《使用Gatling進行性能測試》是一個專欄,一共有5篇文章,包括Gatling項目創建、錄製腳本、腳本調試、模擬設置、報告解讀幾部分,主要適用於剛開始學習使用Gatling的小白,或者看Gatling官方英文文檔困難的小夥伴。我也是第一次學Gatling,都是按官方文檔來的,過程中如果有任何問題,歡迎大家評論或私信交流。

爲什麼要使用Gatling進行性能測試?

Gatling是一款開源的性能測試工具,它有兩個版本,一個是免費版,一個是企業版。企業版相對於免費版來說,多出的功能主要有:支持雲平臺分佈式測試,更多類型的CI集成(比如Bamboo、TeamCity),有一個可視化的管理頁面,可以查看實時報告,也支持LDAP認證。本專欄使用的是Gatling免費版的,所以基於此講一下它的優點。如下:
(1)可以適用於任何操作系統;
(2)性能好,一個線程可以模擬多個用戶;
(3)case as code,腳本語言是scala,是一款基於java的DSL,易於擴展;
(4)CI集成簡單,可以和Jenkins集成;
(5)和Git集成,方便管理代碼版本;
(6)支持HTTP代理腳本錄製和HAR File腳本錄製;
(7)生成的報表豐富易懂;
(8)安裝簡單。

創建你的第一個Gatling項目

Gatling的安裝方式有多種,可以直接下載安裝包安裝,可以使用構建工具安裝,爲了之後便於版本管理和CI集成,這裏選用的安裝方式是使用maven plugin,使用IntelliJ IDEA開發,操作系統是Mac OS。

環境準備

  1. 準備java環境,安裝OpenJDK 8或以上版本。
  2. 安裝構建工具,maven/gradel。
  3. 安裝IDE,IntelliJ/Eclipse。
  4. 安裝chrome瀏覽器。

創建項目

  1. 使用maven直接生成Gatling項目結構。
    (1)從terminal進入自定義目錄:mvn archetype:generate,然後出現很多選項,輸入關鍵字Gatling搜索,然後選擇,如下圖
    在這裏插入圖片描述
    (2)配置maven項目參數,如下圖:
    在這裏插入圖片描述
  2. 使用IDE打開項目
    (1)安裝scala plugin,如下圖所示:
    在這裏插入圖片描述
    在這裏插入圖片描述
    (2)打開項目,如下圖所示:
    Import Project–>找到computerDatabase–>使用maven打開
    在這裏插入圖片描述
  3. 項目配置
    (1)將src目錄標註爲測試源,如下圖所示:
    在這裏插入圖片描述
    (2)配置scala SDK,打開項目後會出現沒有Scala SDK的選項,點擊setup,配置完成後,就可以new scala calss了。
    在這裏插入圖片描述
    在這裏插入圖片描述

將項目推送到github

爲了之後便於查看版本變更以及CI集成,需要將項目推送到github,步驟如下:

  1. git init
    在這裏插入圖片描述
  2. 添加.gitignore 文件,可使用插件.ignore,也可以手動創建.gitigore文件
    在這裏插入圖片描述
    .gitignore文件內容:
/.idea/
/computerDatabase.iml
/target/
*.class
*.log
  1. git status
    在這裏插入圖片描述
  2. git add .
  3. git commit -m “”
    在這裏插入圖片描述
  4. github創建repository
    在這裏插入圖片描述
  5. git remote add origin 遠程倉庫地址
  6. git pull origin master --allow-unrelated-histories
  7. git push -u origin master
    在這裏插入圖片描述

項目結構詳解

  1. resources
    resource目錄顧名思義就是存儲項目資源的,存放的是一些項目的測試數據和配置文件
    (1)bodies:Gatling默認創建的目錄,用於存儲接口調用的body體;
    (2)data:Gatling默認創建的目錄,用於存儲測試數據;
    (3)gatling.config:Gatling的整體配置,具體內容可以點開後查看,uncomment之後生效;
    (4)recorder.config:recorder的配置,recorder是Gatling自帶的錄製工具,第二節會詳細講述;
    (5)logback.xml:用於配置Gatling打印的日誌格式、級別等;
  2. scala
    用於存放測試代碼的目錄。
    (1)Engine:運行測試的類;
    (2)Recorder:運行recorder的類,可以右鍵點擊運行,會打開一個recorder的UI;
    (3)IDEPathHelper:對Gatling項目目錄層級的解釋,所以看這個也可以幫你分析其目錄層級。

第一節的內容就完成了,主要介紹了Gatling以及如何創建和配置Gatling項目,下一節會詳細講解如何使用recorder錄製腳本。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章