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