gatling的环境配置_将Gatling集成到Gradle构建中–了解SourceSet和配置
gatling的環(huán)境配置
我最近在一個項目中工作,我們不得不將出色的負載測試工具Gatling集成到基于Gradle的版本中。 有可用的gradle插件使此操作變得容易,其中有兩個是this和this ,但是對于大多數(shù)需求而言,只需簡單執(zhí)行命令行工具本身就足夠了,因此本文將詳細介紹如何將gatling連接起來進入gradle構(gòu)建過程,并在此過程中了解一些良好的gradle概念。
來源集和配置
要執(zhí)行g(shù)atling cli,我需要做一些事情,需要一個位置來獲取Gatling模擬的源代碼和相關(guān)內(nèi)容,并且需要一種獲取gatling庫的方法。 這是Gradle的兩個概念(SourceSets和Configuration)起作用的地方。
讓我們從第一個開始-SourceSets。
源集
SourceSet只是相關(guān)文件的邏輯分組,最好通過一個示例進行演示。 如果要在gradle版本中添加“ java”插件:
apply plugin: 'java'現(xiàn)在,sourceSets屬性將顯示兩個值“ main”和“ test”,如果我想查找這些sourceSets的詳細信息,可以使用gradle任務來打印詳細信息:
task sourceSetDetails {doLast {sourceSets {main {println java.propertiesprintln resources.properties}test {println java.propertiesprintln resources.properties}}} }回到gatling,我基本上可以創(chuàng)建一個新的sourceSet來保存gatling模擬:
sourceSets {simulations }現(xiàn)在,這將使加特林模擬駐留在“ src / simulations / java”中,并將與之相關(guān)的資源駐留在“ src / simulations / resources”文件夾中,這是可以的,但理想情況下,我希望將其與項目完全分開資料來源。 我希望我的文件夾結(jié)構(gòu)與“ simulations / load”中的負載模擬以及“ simulations / resources”文件夾中的資源一起使用。 可以通過首先應用“ scala”插件來對此進行調(diào)整,該插件為項目帶來了scala編譯支持,然后根據(jù)以下內(nèi)容修改了“ simulations”源集:
apply plugin: 'scala'sourceSets {simulations {scala {srcDirs = ['simulations/load']}resources {srcDirs = ['simulations/resources']}} }通過這些更改,我現(xiàn)在可以將仿真放置在正確的位置,但是尚未掌握加特林和scala的依賴性,這就是gradle的“配置”功能所在的地方。
組態(tài)
Gradle配置是將相關(guān)依賴項分組在一起的一種方式。 如果要使用任務打印現(xiàn)有的一組配置:
task showConfigurations {doLast {configurations.all { conf -> println(conf) }} }這些出現(xiàn):
configuration ':archives' configuration ':compile' configuration ':compileClasspath' configuration ':compileOnly' configuration ':default' configuration ':runtime' configuration ':simulationsCompile' configuration ':simulationsCompileClasspath' configuration ':simulationsCompileOnly' configuration ':simulationsRuntime' configuration ':testCompile' configuration ':testCompileClasspath' configuration ':testCompileOnly' configuration ':testRuntime' configuration ':zinc'應該熟悉“ compile”和“ testCompile”,即通常這樣聲明正常的源依賴性和測試依賴性:
dependencies {compile 'org.slf4j:slf4j-api:1.7.21'testCompile 'junit:junit:4.12' }但是,看起來現(xiàn)在還可以使用“ simulations”源集的配置-“ simulationsCompile”和“ simulationsRuntime”等,因此我可以使用這些配置聲明我的加特林仿真所需的依賴項,但是我的目的是聲明一種自定義配置只是為了進一步介紹該概念,因此讓我們顯式聲明一個:
configurations {gatling }并使用此配置聲明加特林的依賴關(guān)系:
dependencies {gatling 'org.scala-lang:scala-library:2.11.8'gatling 'io.gatling.highcharts:gatling-charts-highcharts:2.2.5' }幾乎在那兒,現(xiàn)在我們?nèi)绾瓮ㄟ^稍微調(diào)整sourceSet來告訴模擬源集中的源使用來自gatling配置的依賴項。
sourceSets {simulations {scala {srcDirs = ['simulations/load']}resources {srcDirs = ['simulations/resources']}compileClasspath += configurations.gatling} }運行加特林場景
在定義了源集和配置之后,我們要做的就是編寫一個任務來運行一次加特林模擬,可以遵循以下步驟:
task gatlingRun(type: JavaExec) {description = 'Run gatling tests'new File("${buildDir}/reports/gatling").mkdirs()classpath = sourceSets.simulations.runtimeClasspath + configurations.gatlingmain = "io.gatling.app.Gatling"args = ['-s', 'simulations.SimpleSimulation','-sf', 'simulations/resources','-df', 'simulations/resources','-rf', "${buildDir}/reports/gatling"] }了解如何將模擬的編譯源以及來自gatling配置的依賴項設(shè)置為“ JavaExec”任務的類路徑
審查此問題的一種好方法是查看我在此處提供的完整的工作示例。
我的github倉庫 – https://github.com/bijukunjummen/cf-show-env
翻譯自: https://www.javacodegeeks.com/2017/05/integrating-gatling-gradle-build-understanding-sourcesets-configuration.html
gatling的環(huán)境配置
總結(jié)
以上是生活随笔為你收集整理的gatling的环境配置_将Gatling集成到Gradle构建中–了解SourceSet和配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序css 华文琥珀_琥珀项目:较
- 下一篇: Mac上的Word文件删除后如何恢复怎么