安裝 Gatling

原本想要使用 Gatling 來進行 gRPC 的 load test,但光安裝 Gatling 就不是很理解,所以先了解並紀錄一下 Gatling 的基本安裝,我認為應該是我平常熟悉的開發語言跟工具不是 Java, Kotlin and Scala 在語法或是設定上都看不懂官網文件XD

關於 Gatling

  • 先決條件:安裝 64bits OpenJDK LTS:8,11,17 > 其他 JVM 像是 JDK 12, client JVMs, 32bits systems or OpenJ9 都不支援
  • Gatling 3.7 開始支援 Java, Kotlin and Scala 來撰寫測試腳本 > 舊版本只能使用 Scala
  • 不要使用 maven central 上的 M 版本 > 僅供 內部 與 Gatling Enterprise 使用

基本環境說明

  1. macOS Monterey 12.3
  2. openjdk 17.0.2 2022-01-18 LTS
  3. Apache Maven 3.8.5
  4. Gradle 7.4.2
  5. Sbt 1.6.2
  6. Scala 2.12.15
  7. Gatling 3.7.6
  8. io.gatling:gatling-maven-plugin 4.1.5
  9. io.gatling.gradle 3.7.6.2
  10. io.gatling:gatling-sbt 4.1.5

安裝方式

  • 先決條件:安裝 64bits OpenJDK LTS:8,11,17

    其他 JVM 像是 JDK 12, client JVMs, 32bits systems or OpenJ9 都不支援

  1. Open Source page 下載整合壓縮檔

    • 整合壓縮檔只支援 JavaScala
    • 整合包內容如下:
      • bin: GatlingRecorder 的啟動腳本
      • conf: Gatling, AkkaLogback 的設定檔
      • lib: Gatling 跟相依套件
      • user-files:
        • simulations: 用來放測試情境程式的位置
        • resources: 非測試程式的其他資源
      • results: 測試結果
  2. 使用 build tool plugin

    透過 build tool 搭配 gatling plugin 來執行測試

  3. 使用 IDE

    • IntelliJ IDEA

      原生就已支援 Java, Kotlin, maven and gradle,只有 Scala 需要額外安裝套件

    • Visual Studio Code

      安裝語言的相應套件可以正確 build 專案,但無法如同官網說明的單執行 Engine 會出現 build error

      1document

      2builderror

心得

Gatling 提供的安裝方式好幾個,不過對於非原生 Java, Kotlin and Scala 的使用者並不友善,像是 build tool 的整合,以我一個其他語言的開發人員只想做 load test 還得要去了解 Maven Gradle Sbt 可以想見一定是障礙重重;以 IDE 的整合而言,IntelliJ IDEA 使用上沒問題,但要非 Java, Kotlin 開發人員只為了 load test 安裝,我個人覺得太材小用了,而常見的 Visual Studio Code 卻沒有更完整的設定說明要重新了解整個開發跟工具的生態圈,進入門檻過高,實在可惜

參考資訊

  1. Gatling:Installation
  2. How to install Maven on macOS
  3. Gatling:Maven Plugin
  4. Grandle:Install
  5. Gatling:Gradle Plugin
  6. sbt:Install
  7. Gatling:SBT Plugin