diff --git a/gatling-loadtest-demo/.cache-tests b/gatling-loadtest-demo/.cache-tests new file mode 100644 index 0000000000..31b0015eef --- /dev/null +++ b/gatling-loadtest-demo/.cache-tests @@ -0,0 +1,166 @@ +format version: 5 +output mode: +1 items +0 -> multiple +output directories: +2 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\resources -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes +compile options: +8 items +0 -> -javabootclasspath +1 -> C:\develop\Java\jdk1.8.0_77\jre\lib\resources.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jsse.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jce.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\charsets.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\jfr.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\access-bridge-64.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\cldrdata.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\dnsns.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\jaccess.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\jfxrt.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\localedata.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\nashorn.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunec.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunjce_provider.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunmscapi.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\sunpkcs11.jar;C:\develop\Java\jdk1.8.0_77\jre\lib\ext\zipfs.jar +2 -> -javaextdirs +3 -> +4 -> -bootclasspath +5 -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +6 -> -encoding +7 -> UTF-8 +javac options: +0 items +compiler version: +1 items +0 -> 2.11.8 +compile order: +1 items +0 -> Mixed +name hashing: +1 items +0 -> false +products: +9 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$delayedInit$body.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper$.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\org\baeldung\RecordedSimulation.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$delayedInit$body.class +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder.class +binary dependencies: +15 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar +direct source dependencies: +2 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala +direct external dependencies: +0 items +public inherited source dependencies: +0 items +public inherited external dependencies: +0 items +member reference internal dependencies: +0 items +member reference external dependencies: +0 items +inheritance internal dependencies: +0 items +inheritance external dependencies: +0 items +class names: +9 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine$ +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> Engine$delayedInit$body +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> IDEPathHelper +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> IDEPathHelper$ +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> org.baeldung.RecordedSimulation +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder$ +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> Recorder$delayedInit$body +used names: +0 items +product stamps: +9 items +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$.class -> lastModified(1464356690978) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine$delayedInit$body.class -> lastModified(1464356690989) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Engine.class -> lastModified(1464356690863) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper$.class -> lastModified(1464356691030) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\IDEPathHelper.class -> lastModified(1464356691005) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\org\baeldung\RecordedSimulation.class -> lastModified(1464356691072) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$.class -> lastModified(1464356691045) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder$delayedInit$body.class -> lastModified(1464356691049) +C:\develop\git\tutorials\gatling-loadtest-demo\target\test-classes\Recorder.class -> lastModified(1464356691034) +source stamps: +4 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> hash(e98bacf89a84be65d2a131fa7e072d4f6ebef89d) +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> hash(20255b66020a40c67db52f8248fab7e3250fc940) +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> hash(1d4aab935ed26aa3fee62aff5bc9d1d2dbc3f776) +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> hash(667da8a9d712f988ed7b14bdfa7b293c76ac3b61) +binary stamps: +8 items +C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -> lastModified(1463581376873) +C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -> lastModified(1460466041763) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -> lastModified(1463577683111) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -> lastModified(1463577434095) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -> lastModified(1463577425041) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -> lastModified(1463577691216) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -> lastModified(1463577767127) +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -> lastModified(1463577812366) +class names: +8 items +C:\develop\IDE\sts-bundle\sts-3.7.3.RELEASE\plugins\org.scala-lang.scala-library_2.11.8.v20160304-115712-1706a37eb8.jar -> scala.reflect.ClassTag$ +C:\develop\Java\jdk1.8.0_77\jre\lib\rt.jar -> java.lang.Object +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-app\2.2.0\gatling-app-2.2.0.jar -> io.gatling.app.Gatling$ +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-commons\2.2.0\gatling-commons-2.2.0.jar -> io.gatling.commons.util.TypeCaster$ +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-core\2.2.0\gatling-core-2.2.0.jar -> io.gatling.core.scenario.Simulation +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-http\2.2.0\gatling-http-2.2.0.jar -> io.gatling.http.protocol.HttpProtocolBuilder +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-jdbc\2.2.0\gatling-jdbc-2.2.0.jar -> io.gatling.jdbc.Predef$ +C:\Users\Ivan Paolillo\.m2\repository\io\gatling\gatling-recorder\2.2.0\gatling-recorder-2.2.0.jar -> io.gatling.recorder.GatlingRecorder$ +internal apis: +4 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHA7lBuUAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAGRW5naW5ldXIAGltMeHNidGkuYXBpLlR5cGVQYXJhbWV0ZXI72W0mDyid8rYCAAB4cAAAAAB+cgAYeHNidGkuYXBpLkRlZmluaXRpb25UeXBlAAAAAAAAAAASAAB4cgAOamF2YS5sYW5nLkVudW0AAAAAAAAAABIAAHhwdAAGTW9kdWxldXIAE1tMamF2YS5sYW5nLlN0cmluZzut0lbn6R17RwIAAHhwAAAAAnQAEHNjYWxhLmRlcHJlY2F0ZWR0ABpzY2FsYS5kZXByZWNhdGVkT3ZlcnJpZGluZ3NyABN4c2J0aS5TYWZlTGF6eSRJbXBsO5FPEfRFTMkCAANaAAhiaXRtYXAkMEwAAl90dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEZXZhbHQAEUxzY2FsYS9GdW5jdGlvbjA7eHIAFnhzYnRpLmFwaS5BYnN0cmFjdExhennTd7UBX7vnoAIAAHhwAXNyABN4c2J0aS5hcGkuRW1wdHlUeXBlvP2eRkk7iSQCAAB4cgAUeHNidGkuYXBpLlNpbXBsZVR5cGVyeGKIISO/QAIAAHhyAA54c2J0aS5hcGkuVHlwZT9q2SEWSarKAgAAeHBwc3EAfgAwAXNyABN4c2J0aS5hcGkuU3RydWN0dXJlqar5gJNv2AACAANMAAhkZWNsYXJlZHEAfgAVTAAJaW5oZXJpdGVkcQB+ABVMAAdwYXJlbnRzcQB+ABV4cQB+ADdzcQB+ADABdXEAfgAQAAAAAHBzcQB+ADABdXEAfgAQAAAAAXNyAA14c2J0aS5hcGkuRGVmUr6f4ny0NmkCAAJMAApyZXR1cm5UeXBldAAQTHhzYnRpL2FwaS9UeXBlO1sAD3ZhbHVlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1BhcmFtZXRlckxpc3Q7eHEAfgAWcQB+ACB1cQB+ACEAAAABc3IAFHhzYnRpLmFwaS5Bbm5vdGF0aW9u3g6BovZcCrICAAJbAAlhcmd1bWVudHN0AB9bTHhzYnRpL2FwaS9Bbm5vdGF0aW9uQXJndW1lbnQ7TAAEYmFzZXEAfgBBeHB1cgAfW0x4c2J0aS5hcGkuQW5ub3RhdGlvbkFyZ3VtZW50O1Gdpo84JQ94AgAAeHAAAAABc3IAHHhzYnRpLmFwaS5Bbm5vdGF0aW9uQXJndW1lbnTWRbHYAxsXfAIAAkwABG5hbWVxAH4AHEwABXZhbHVlcQB+ABx4cHQAAHQAKigibWFpbiBzaG91bGQgbm90IGJlIG92ZXJyaWRkZW4iLCIyLjExLjAiKXNyABR4c2J0aS5hcGkuUHJvamVjdGlvbvPSjVTpRaQtAgACTAACaWRxAH4AHEwABnByZWZpeHQAFkx4c2J0aS9hcGkvU2ltcGxlVHlwZTt4cQB+ADZ0ABRkZXByZWNhdGVkT3ZlcnJpZGluZ3NyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANnNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAAAnNyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAAFc2NhbGFzcgAOeHNidGkuYXBpLlRoaXPbCe2mzFpAXAIAAHhxAH4AW3NxAH4AIwB0AARtYWludXEAfgAmAAAAAHNxAH4ATnQABFVuaXRxAH4AVHVyABpbTHhzYnRpLmFwaS5QYXJhbWV0ZXJMaXN0O/XTOh3ys3DuAgAAeHAAAAABc3IAF3hzYnRpLmFwaS5QYXJhbWV0ZXJMaXN01sW8HGRJdOMCAAJaAAppc0ltcGxpY2l0WwAKcGFyYW1ldGVyc3QAHFtMeHNidGkvYXBpL01ldGhvZFBhcmFtZXRlcjt4cAB1cgAcW0x4c2J0aS5hcGkuTWV0aG9kUGFyYW1ldGVyO8+4xV2l3bVtAgAAeHAAAAABc3IAGXhzYnRpLmFwaS5NZXRob2RQYXJhbWV0ZXIfRa4X00mw6gIABFoACmhhc0RlZmF1bHRMAAhtb2RpZmllcnQAHUx4c2J0aS9hcGkvUGFyYW1ldGVyTW9kaWZpZXI7TAAEbmFtZXEAfgAcTAADdHBlcQB+AEF4cAB+cgAbeHNidGkuYXBpLlBhcmFtZXRlck1vZGlmaWVyAAAAAAAAAAASAAB4cQB+ACl0AAVQbGFpbnQABGFyZ3NzcgAXeHNidGkuYXBpLlBhcmFtZXRlcml6ZWQWbO5pA8m7fwIAAkwACGJhc2VUeXBlcQB+AE9bAA10eXBlQXJndW1lbnRzdAARW0x4c2J0aS9hcGkvVHlwZTt4cQB+ADZzcQB+AE50AAVBcnJheXEAfgBUdXIAEVtMeHNidGkuYXBpLlR5cGU7dP+lWnv56UECAAB4cAAAAAFzcQB+AE50AAZTdHJpbmdzcQB+AFJzcQB+AFV1cQB+AFgAAAADc3EAfgBadAAEamF2YXNxAH4AWnQABGxhbmdxAH4AX3BzcQB+ADABdXEAfgB4AAAABHNxAH4ATnQAA0FwcHEAfgBUc3EAfgBOdAALRGVsYXllZEluaXRxAH4AVHNxAH4ATnQABk9iamVjdHEAfgB8c3EAfgBOdAADQW55cQB+AFRwcHVyABRbTHhzYnRpLmFwaS5QYWNrYWdlO1sTGTdwpyehAgAAeHAAAAAAc3IAFXhzYnRpLmFwaS5Db21waWxhdGlvbu364MNq6KBCAgACSgAJc3RhcnRUaW1lWwAHb3V0cHV0c3QAGltMeHNidGkvYXBpL091dHB1dFNldHRpbmc7eHAAAAFU8nXEpnVyABpbTHhzYnRpLmFwaS5PdXRwdXRTZXR0aW5nO39qwvOnh6VCAgAAeHAAAAACc3IAF3hzYnRpLmFwaS5PdXRwdXRTZXR0aW5netmaR3T7HXsCAAJMAA9vdXRwdXREaXJlY3RvcnlxAH4AHEwAD3NvdXJjZURpcmVjdG9yeXEAfgAceHB0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AD1DOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHNjYWxhc3EAfgCUdABCQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1x0YXJnZXRcdGVzdC1jbGFzc2VzdABBQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1xzcmNcdGVzdFxyZXNvdXJjZXN1cgACW0Ks8xf4BghU4AIAAHhwAAAAFOmLrPiahL5l0qEx+n4HLU9uvvid +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHCXMg60AHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAANSURFUGF0aEhlbHBlcnVyABpbTHhzYnRpLmFwaS5UeXBlUGFyYW1ldGVyO9ltJg8onfK2AgAAeHAAAAAAfnIAGHhzYnRpLmFwaS5EZWZpbml0aW9uVHlwZQAAAAAAAAAAEgAAeHIADmphdmEubGFuZy5FbnVtAAAAAAAAAAASAAB4cHQABk1vZHVsZXVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAABzcgATeHNidGkuU2FmZUxhenkkSW1wbDuRTxH0RUzJAgADWgAIYml0bWFwJDBMAAJfdHQAEkxqYXZhL2xhbmcvT2JqZWN0O0wABGV2YWx0ABFMc2NhbGEvRnVuY3Rpb24wO3hyABZ4c2J0aS5hcGkuQWJzdHJhY3RMYXp503e1AV+756ACAAB4cAFzcgATeHNidGkuYXBpLkVtcHR5VHlwZbz9nkZJO4kkAgAAeHIAFHhzYnRpLmFwaS5TaW1wbGVUeXBlcnhiiCEjv0ACAAB4cgAOeHNidGkuYXBpLlR5cGU/atkhFkmqygIAAHhwcHNxAH4ALgFzcgATeHNidGkuYXBpLlN0cnVjdHVyZamq+YCTb9gAAgADTAAIZGVjbGFyZWRxAH4AFUwACWluaGVyaXRlZHEAfgAVTAAHcGFyZW50c3EAfgAVeHEAfgA1c3EAfgAuAXVxAH4AEAAAAABwc3EAfgAuAXVxAH4AEAAAAABwc3EAfgAuAXVyABFbTHhzYnRpLmFwaS5UeXBlO3T/pVp7+elBAgAAeHAAAAACc3IAFHhzYnRpLmFwaS5Qcm9qZWN0aW9u89KNVOlFpC0CAAJMAAJpZHEAfgAcTAAGcHJlZml4dAAWTHhzYnRpL2FwaS9TaW1wbGVUeXBlO3hxAH4ANHQABk9iamVjdHNyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANHNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAAA3NyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAAEamF2YXNxAH4ATXQABGxhbmdzcgAOeHNidGkuYXBpLlRoaXPbCe2mzFpAXAIAAHhxAH4ATnNxAH4AQXQAA0FueXNxAH4ARXNxAH4ASHVxAH4ASwAAAAJzcQB+AE10AAVzY2FsYXEAfgBUcHB1cgAUW0x4c2J0aS5hcGkuUGFja2FnZTtbExk3cKcnoQIAAHhwAAAAAHNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ1xKZ1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5cQB+ABxMAA9zb3VyY2VEaXJlY3RvcnlxAH4AHHhwdABCQzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1x0YXJnZXRcdGVzdC1jbGFzc2VzdAA9QzpcZGV2ZWxvcFxnaXRcdHV0b3JpYWxzXGdhdGxpbmctbG9hZHRlc3QtZGVtb1xzcmNcdGVzdFxzY2FsYXNxAH4AY3QAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAQUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3RccmVzb3VyY2VzdXIAAltCrPMX+AYIVOACAAB4cAAAABQgJVtmAgpAxn21L4JI+rfjJQ/JQA== +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHARTQnpAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAfb3JnLmJhZWxkdW5nLlJlY29yZGVkU2ltdWxhdGlvbnVyABpbTHhzYnRpLmFwaS5UeXBlUGFyYW1ldGVyO9ltJg8onfK2AgAAeHAAAAAAfnIAGHhzYnRpLmFwaS5EZWZpbml0aW9uVHlwZQAAAAAAAAAAEgAAeHIADmphdmEubGFuZy5FbnVtAAAAAAAAAAASAAB4cHQACENsYXNzRGVmdXIAE1tMamF2YS5sYW5nLlN0cmluZzut0lbn6R17RwIAAHhwAAAAAHNyABN4c2J0aS5TYWZlTGF6eSRJbXBsO5FPEfRFTMkCAANaAAhiaXRtYXAkMEwAAl90dAASTGphdmEvbGFuZy9PYmplY3Q7TAAEZXZhbHQAEUxzY2FsYS9GdW5jdGlvbjA7eHIAFnhzYnRpLmFwaS5BYnN0cmFjdExhennTd7UBX7vnoAIAAHhwAXNyABN4c2J0aS5hcGkuRW1wdHlUeXBlvP2eRkk7iSQCAAB4cgAUeHNidGkuYXBpLlNpbXBsZVR5cGVyeGKIISO/QAIAAHhyAA54c2J0aS5hcGkuVHlwZT9q2SEWSarKAgAAeHBwc3EAfgAuAXNyABN4c2J0aS5hcGkuU3RydWN0dXJlqar5gJNv2AACAANMAAhkZWNsYXJlZHEAfgAVTAAJaW5oZXJpdGVkcQB+ABVMAAdwYXJlbnRzcQB+ABV4cQB+ADVzcQB+AC4BdXEAfgAQAAAAAHBzcQB+AC4BdXEAfgAQAAAAAHBzcQB+AC4BdXIAEVtMeHNidGkuYXBpLlR5cGU7dP+lWnv56UECAAB4cAAAAANzcgAUeHNidGkuYXBpLlByb2plY3Rpb27z0o1U6UWkLQIAAkwAAmlkcQB+ABxMAAZwcmVmaXh0ABZMeHNidGkvYXBpL1NpbXBsZVR5cGU7eHEAfgA0dAAKU2ltdWxhdGlvbnNyABN4c2J0aS5hcGkuU2luZ2xldG9u/Kdf+M9W5EYCAAFMAARwYXRodAAQTHhzYnRpL2FwaS9QYXRoO3hxAH4ANHNyAA54c2J0aS5hcGkuUGF0aJs9XAjOpSeEAgABWwAKY29tcG9uZW50c3QAGltMeHNidGkvYXBpL1BhdGhDb21wb25lbnQ7eHB1cgAaW0x4c2J0aS5hcGkuUGF0aENvbXBvbmVudDtD2gl0LWcWdAIAAHhwAAAABXNyAAx4c2J0aS5hcGkuSWSYMmyLN1PEQAIAAUwAAmlkcQB+ABx4cgAXeHNidGkuYXBpLlBhdGhDb21wb25lbnRfmiJbLoafvAIAAHhwdAACaW9zcQB+AE10AAdnYXRsaW5nc3EAfgBNdAAEY29yZXNxAH4ATXQACHNjZW5hcmlvc3IADnhzYnRpLmFwaS5UaGlz2wntpsxaQFwCAAB4cQB+AE5zcQB+AEF0AAZPYmplY3RzcQB+AEVzcQB+AEh1cQB+AEsAAAADc3EAfgBNdAAEamF2YXNxAH4ATXQABGxhbmdxAH4AWHNxAH4AQXQAA0FueXNxAH4ARXNxAH4ASHVxAH4ASwAAAAJzcQB+AE10AAVzY2FsYXEAfgBYcHB1cgAUW0x4c2J0aS5hcGkuUGFja2FnZTtbExk3cKcnoQIAAHhwAAAAAnNyABF4c2J0aS5hcGkuUGFja2FnZX5Zj/auzjlYAgABTAAEbmFtZXEAfgAceHB0AAxvcmcuYmFlbGR1bmdzcQB+AGt0AANvcmdzcgAVeHNidGkuYXBpLkNvbXBpbGF0aW9u7frgw2rooEICAAJKAAlzdGFydFRpbWVbAAdvdXRwdXRzdAAaW0x4c2J0aS9hcGkvT3V0cHV0U2V0dGluZzt4cAAAAVTydcSmdXIAGltMeHNidGkuYXBpLk91dHB1dFNldHRpbmc7f2rC86eHpUICAAB4cAAAAAJzcgAXeHNidGkuYXBpLk91dHB1dFNldHRpbmd62ZpHdPsdewIAAkwAD291dHB1dERpcmVjdG9yeXEAfgAcTAAPc291cmNlRGlyZWN0b3J5cQB+ABx4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AHV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlc3VyAAJbQqzzF/gGCFTgAgAAeHAAAAAUHUqrk17SaqP+5ir/W8nR0tvD93Y= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> +rO0ABXNyABB4c2J0aS5hcGkuU291cmNlFlpwRASfbtoCAAZJAAdhcGlIYXNoWgAIaGFzTWFjcm9MABhfaW50ZXJuYWxPbmx5X25hbWVIYXNoZXN0ACRMeHNidGkvYXBpL19pbnRlcm5hbE9ubHlfTmFtZUhhc2hlcztMAANhcGl0ABVMeHNidGkvYXBpL1NvdXJjZUFQSTtMAAtjb21waWxhdGlvbnQAF0x4c2J0aS9hcGkvQ29tcGlsYXRpb247WwAEaGFzaHQAAltCeHD3nMHWAHNyACJ4c2J0aS5hcGkuX2ludGVybmFsT25seV9OYW1lSGFzaGVzVNq+mfrU7EwCAAJbAA9pbXBsaWNpdE1lbWJlcnN0ACNbTHhzYnRpL2FwaS9faW50ZXJuYWxPbmx5X05hbWVIYXNoO1sADnJlZ3VsYXJNZW1iZXJzcQB+AAd4cHVyACNbTHhzYnRpLmFwaS5faW50ZXJuYWxPbmx5X05hbWVIYXNoO0lagLbdlov0AgAAeHAAAAAAdXEAfgAJAAAAAHNyABN4c2J0aS5hcGkuU291cmNlQVBJuV6n+SkjOKQCAAJbAAtkZWZpbml0aW9uc3QAF1tMeHNidGkvYXBpL0RlZmluaXRpb247WwAIcGFja2FnZXN0ABRbTHhzYnRpL2FwaS9QYWNrYWdlO3hwdXIAF1tMeHNidGkuYXBpLkRlZmluaXRpb247iMlc57TjXg4CAAB4cAAAAAFzcgATeHNidGkuYXBpLkNsYXNzTGlrZYM0HKHfsJdsAgAETAAOZGVmaW5pdGlvblR5cGV0ABpMeHNidGkvYXBpL0RlZmluaXRpb25UeXBlO1sAEHNhdmVkQW5ub3RhdGlvbnN0ABNbTGphdmEvbGFuZy9TdHJpbmc7TAAIc2VsZlR5cGV0ABBMeHNidGkvYXBpL0xhenk7TAAJc3RydWN0dXJlcQB+ABV4cgAheHNidGkuYXBpLlBhcmFtZXRlcml6ZWREZWZpbml0aW9u+RFusdVQPOICAAFbAA50eXBlUGFyYW1ldGVyc3QAGltMeHNidGkvYXBpL1R5cGVQYXJhbWV0ZXI7eHIAFHhzYnRpLmFwaS5EZWZpbml0aW9uhyob6HFC40YCAARMAAZhY2Nlc3N0ABJMeHNidGkvYXBpL0FjY2VzcztbAAthbm5vdGF0aW9uc3QAF1tMeHNidGkvYXBpL0Fubm90YXRpb247TAAJbW9kaWZpZXJzdAAVTHhzYnRpL2FwaS9Nb2RpZmllcnM7TAAEbmFtZXQAEkxqYXZhL2xhbmcvU3RyaW5nO3hwc3IAEHhzYnRpLmFwaS5QdWJsaWO6WD2ubC1gQgIAAHhyABB4c2J0aS5hcGkuQWNjZXNz3WKa+B1jMUgCAAB4cHVyABdbTHhzYnRpLmFwaS5Bbm5vdGF0aW9uO+uX6xkQ9o1IAgAAeHAAAAAAc3IAE3hzYnRpLmFwaS5Nb2RpZmllcnPHERMhaZzcJAIAAUIABWZsYWdzeHAAdAAIUmVjb3JkZXJ1cgAaW0x4c2J0aS5hcGkuVHlwZVBhcmFtZXRlcjvZbSYPKJ3ytgIAAHhwAAAAAH5yABh4c2J0aS5hcGkuRGVmaW5pdGlvblR5cGUAAAAAAAAAABIAAHhyAA5qYXZhLmxhbmcuRW51bQAAAAAAAAAAEgAAeHB0AAZNb2R1bGV1cgATW0xqYXZhLmxhbmcuU3RyaW5nO63SVufpHXtHAgAAeHAAAAACdAAQc2NhbGEuZGVwcmVjYXRlZHQAGnNjYWxhLmRlcHJlY2F0ZWRPdmVycmlkaW5nc3IAE3hzYnRpLlNhZmVMYXp5JEltcGw7kU8R9EVMyQIAA1oACGJpdG1hcCQwTAACX3R0ABJMamF2YS9sYW5nL09iamVjdDtMAARldmFsdAARTHNjYWxhL0Z1bmN0aW9uMDt4cgAWeHNidGkuYXBpLkFic3RyYWN0TGF6edN3tQFfu+egAgAAeHABc3IAE3hzYnRpLmFwaS5FbXB0eVR5cGW8/Z5GSTuJJAIAAHhyABR4c2J0aS5hcGkuU2ltcGxlVHlwZXJ4YoghI79AAgAAeHIADnhzYnRpLmFwaS5UeXBlP2rZIRZJqsoCAAB4cHBzcQB+ADABc3IAE3hzYnRpLmFwaS5TdHJ1Y3R1cmWpqvmAk2/YAAIAA0wACGRlY2xhcmVkcQB+ABVMAAlpbmhlcml0ZWRxAH4AFUwAB3BhcmVudHNxAH4AFXhxAH4AN3NxAH4AMAF1cQB+ABAAAAAAcHNxAH4AMAF1cQB+ABAAAAABc3IADXhzYnRpLmFwaS5EZWZSvp/ifLQ2aQIAAkwACnJldHVyblR5cGV0ABBMeHNidGkvYXBpL1R5cGU7WwAPdmFsdWVQYXJhbWV0ZXJzdAAaW0x4c2J0aS9hcGkvUGFyYW1ldGVyTGlzdDt4cQB+ABZxAH4AIHVxAH4AIQAAAAFzcgAUeHNidGkuYXBpLkFubm90YXRpb27eDoGi9lwKsgIAAlsACWFyZ3VtZW50c3QAH1tMeHNidGkvYXBpL0Fubm90YXRpb25Bcmd1bWVudDtMAARiYXNlcQB+AEF4cHVyAB9bTHhzYnRpLmFwaS5Bbm5vdGF0aW9uQXJndW1lbnQ7UZ2mjzglD3gCAAB4cAAAAAFzcgAceHNidGkuYXBpLkFubm90YXRpb25Bcmd1bWVudNZFsdgDGxd8AgACTAAEbmFtZXEAfgAcTAAFdmFsdWVxAH4AHHhwdAAAdAAqKCJtYWluIHNob3VsZCBub3QgYmUgb3ZlcnJpZGRlbiIsIjIuMTEuMCIpc3IAFHhzYnRpLmFwaS5Qcm9qZWN0aW9u89KNVOlFpC0CAAJMAAJpZHEAfgAcTAAGcHJlZml4dAAWTHhzYnRpL2FwaS9TaW1wbGVUeXBlO3hxAH4ANnQAFGRlcHJlY2F0ZWRPdmVycmlkaW5nc3IAE3hzYnRpLmFwaS5TaW5nbGV0b278p1/4z1bkRgIAAUwABHBhdGh0ABBMeHNidGkvYXBpL1BhdGg7eHEAfgA2c3IADnhzYnRpLmFwaS5QYXRomz1cCM6lJ4QCAAFbAApjb21wb25lbnRzdAAaW0x4c2J0aS9hcGkvUGF0aENvbXBvbmVudDt4cHVyABpbTHhzYnRpLmFwaS5QYXRoQ29tcG9uZW50O0PaCXQtZxZ0AgAAeHAAAAACc3IADHhzYnRpLmFwaS5JZJgybIs3U8RAAgABTAACaWRxAH4AHHhyABd4c2J0aS5hcGkuUGF0aENvbXBvbmVudF+aIlsuhp+8AgAAeHB0AAVzY2FsYXNyAA54c2J0aS5hcGkuVGhpc9sJ7abMWkBcAgAAeHEAfgBbc3EAfgAjAHQABG1haW51cQB+ACYAAAAAc3EAfgBOdAAEVW5pdHEAfgBUdXIAGltMeHNidGkuYXBpLlBhcmFtZXRlckxpc3Q79dM6HfKzcO4CAAB4cAAAAAFzcgAXeHNidGkuYXBpLlBhcmFtZXRlckxpc3TWxbwcZEl04wIAAloACmlzSW1wbGljaXRbAApwYXJhbWV0ZXJzdAAcW0x4c2J0aS9hcGkvTWV0aG9kUGFyYW1ldGVyO3hwAHVyABxbTHhzYnRpLmFwaS5NZXRob2RQYXJhbWV0ZXI7z7jFXaXdtW0CAAB4cAAAAAFzcgAZeHNidGkuYXBpLk1ldGhvZFBhcmFtZXRlch9FrhfTSbDqAgAEWgAKaGFzRGVmYXVsdEwACG1vZGlmaWVydAAdTHhzYnRpL2FwaS9QYXJhbWV0ZXJNb2RpZmllcjtMAARuYW1lcQB+ABxMAAN0cGVxAH4AQXhwAH5yABt4c2J0aS5hcGkuUGFyYW1ldGVyTW9kaWZpZXIAAAAAAAAAABIAAHhxAH4AKXQABVBsYWludAAEYXJnc3NyABd4c2J0aS5hcGkuUGFyYW1ldGVyaXplZBZs7mkDybt/AgACTAAIYmFzZVR5cGVxAH4AT1sADXR5cGVBcmd1bWVudHN0ABFbTHhzYnRpL2FwaS9UeXBlO3hxAH4ANnNxAH4ATnQABUFycmF5cQB+AFR1cgARW0x4c2J0aS5hcGkuVHlwZTt0/6Vae/npQQIAAHhwAAAAAXNxAH4ATnQABlN0cmluZ3NxAH4AUnNxAH4AVXVxAH4AWAAAAANzcQB+AFp0AARqYXZhc3EAfgBadAAEbGFuZ3EAfgBfcHNxAH4AMAF1cQB+AHgAAAAEc3EAfgBOdAADQXBwcQB+AFRzcQB+AE50AAtEZWxheWVkSW5pdHEAfgBUc3EAfgBOdAAGT2JqZWN0cQB+AHxzcQB+AE50AANBbnlxAH4AVHBwdXIAFFtMeHNidGkuYXBpLlBhY2thZ2U7WxMZN3CnJ6ECAAB4cAAAAABzcgAVeHNidGkuYXBpLkNvbXBpbGF0aW9u7frgw2rooEICAAJKAAlzdGFydFRpbWVbAAdvdXRwdXRzdAAaW0x4c2J0aS9hcGkvT3V0cHV0U2V0dGluZzt4cAAAAVTydcSmdXIAGltMeHNidGkuYXBpLk91dHB1dFNldHRpbmc7f2rC86eHpUICAAB4cAAAAAJzcgAXeHNidGkuYXBpLk91dHB1dFNldHRpbmd62ZpHdPsdewIAAkwAD291dHB1dERpcmVjdG9yeXEAfgAcTAAPc291cmNlRGlyZWN0b3J5cQB+ABx4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AJR0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlc3VyAAJbQqzzF/gGCFTgAgAAeHAAAAAUZn2oqdcS+YjtexS9+nspPHasO2E= +external apis: +0 items +source infos: +4 items +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Engine.scala -> +AAAAAAAAAAA= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\IDEPathHelper.scala -> +AAAAAAAAAAA= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\org\baeldung\RecordedSimulation.scala -> +AAAAAAAAAAA= +C:\develop\git\tutorials\gatling-loadtest-demo\src\test\scala\Recorder.scala -> +AAAAAAAAAAA= +compilations: +17 items +00 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVOxQus91cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +01 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1Iw051cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +02 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1LJxV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +03 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1LOZV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +04 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1QxNd1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +05 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1U4651cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +06 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1kjrl1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +07 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1koUh1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +08 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1kwGd1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +09 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1lpUV1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +10 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1oYjh1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +11 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1ofWt1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +12 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1px4J1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +13 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVO1q7U91cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +14 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJoEOF1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAUUM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QATEM6XGRldmVsb3Bcd29ya3NwYWNlc1x2anBvcnRhbFdvcmtzcGFjZVxnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AFFDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AFBDOlxkZXZlbG9wXHdvcmtzcGFjZXNcdmpwb3J0YWxXb3Jrc3BhY2VcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +15 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ0QXt1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== +16 -> rO0ABXNyABV4c2J0aS5hcGkuQ29tcGlsYXRpb27t+uDDauigQgIAAkoACXN0YXJ0VGltZVsAB291dHB1dHN0ABpbTHhzYnRpL2FwaS9PdXRwdXRTZXR0aW5nO3hwAAABVPJ1xKZ1cgAaW0x4c2J0aS5hcGkuT3V0cHV0U2V0dGluZzt/asLzp4elQgIAAHhwAAAAAnNyABd4c2J0aS5hcGkuT3V0cHV0U2V0dGluZ3rZmkd0+x17AgACTAAPb3V0cHV0RGlyZWN0b3J5dAASTGphdmEvbGFuZy9TdHJpbmc7TAAPc291cmNlRGlyZWN0b3J5cQB+AAZ4cHQAQkM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cdGFyZ2V0XHRlc3QtY2xhc3Nlc3QAPUM6XGRldmVsb3BcZ2l0XHR1dG9yaWFsc1xnYXRsaW5nLWxvYWR0ZXN0LWRlbW9cc3JjXHRlc3Rcc2NhbGFzcQB+AAV0AEJDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHRhcmdldFx0ZXN0LWNsYXNzZXN0AEFDOlxkZXZlbG9wXGdpdFx0dXRvcmlhbHNcZ2F0bGluZy1sb2FkdGVzdC1kZW1vXHNyY1x0ZXN0XHJlc291cmNlcw== diff --git a/gatling-loadtest-demo/.classpath b/gatling-loadtest-demo/.classpath new file mode 100644 index 0000000000..6026072109 --- /dev/null +++ b/gatling-loadtest-demo/.classpath @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/gatling-loadtest-demo/.project b/gatling-loadtest-demo/.project new file mode 100644 index 0000000000..a5e3b774e0 --- /dev/null +++ b/gatling-loadtest-demo/.project @@ -0,0 +1,24 @@ + + + gatling-loadtest-demo + + + + + + org.scala-ide.sdt.core.scalabuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.scala-ide.sdt.core.scalanature + org.eclipse.jdt.core.javanature + org.eclipse.m2e.core.maven2Nature + + diff --git a/gatling-loadtest-demo/pom.xml b/gatling-loadtest-demo/pom.xml new file mode 100644 index 0000000000..f5ed1d7de7 --- /dev/null +++ b/gatling-loadtest-demo/pom.xml @@ -0,0 +1,113 @@ + + + 4.0.0 + org.baeldung + gatling-loadtest-demo + 1.0-SNAPSHOT + + + 1.8 + 1.8 + 2.11.7 + UTF-8 + + 2.2.0 + + 3.2.2 + + + + + + io.gatling + gatling-app + ${gatling.version} + + + io.gatling + gatling-recorder + ${gatling.version} + + + io.gatling.highcharts + gatling-charts-highcharts + ${gatling.version} + + + org.scala-lang + scala-library + ${scala.version} + + + + + + + io.gatling.highcharts + gatling-charts-highcharts + + + io.gatling + gatling-app + + + io.gatling + gatling-recorder + + + org.scala-lang + scala-library + + + + + src/test/scala + + + + net.alchim31.maven + scala-maven-plugin + ${scala-maven-plugin.version} + + + + + + net.alchim31.maven + scala-maven-plugin + + + + testCompile + + + + -Ybackend:GenBCode + -Ydelambdafy:method + -target:jvm-1.8 + -deprecation + -feature + -unchecked + -language:implicitConversions + -language:postfixOps + + + + + + + + io.gatling + gatling-maven-plugin + ${gatling.version} + + + test + execute + + + + + + diff --git a/gatling-loadtest-demo/src/test/resources/gatling.conf b/gatling-loadtest-demo/src/test/resources/gatling.conf new file mode 100644 index 0000000000..8bfa0ed366 --- /dev/null +++ b/gatling-loadtest-demo/src/test/resources/gatling.conf @@ -0,0 +1,127 @@ +######################### +# Gatling Configuration # +######################### + +# This file contains all the settings configurable for Gatling with their default values + +gatling { + core { + #outputDirectoryBaseName = "" # The prefix for each simulation result folder (then suffixed by the report generation timestamp) + #runDescription = "" # The description for this simulation run, displayed in each report + #encoding = "utf-8" # Encoding to use throughout Gatling for file and string manipulation + #simulationClass = "" # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated) + #mute = false # When set to true, don't ask for simulation name nor run description (currently only used by Gatling SBT plugin) + #elFileBodiesCacheMaxCapacity = 200 # Cache size for request body EL templates, set to 0 to disable + #rawFileBodiesCacheMaxCapacity = 200 # Cache size for request body Raw templates, set to 0 to disable + #rawFileBodiesInMemoryMaxSize = 1000 # Below this limit, raw file bodies will be cached in memory + + extract { + regex { + #cacheMaxCapacity = 200 # Cache size for the compiled regexes, set to 0 to disable caching + } + xpath { + #cacheMaxCapacity = 200 # Cache size for the compiled XPath queries, set to 0 to disable caching + } + jsonPath { + #cacheMaxCapacity = 200 # Cache size for the compiled jsonPath queries, set to 0 to disable caching + #preferJackson = false # When set to true, prefer Jackson over Boon for JSON-related operations + } + css { + #cacheMaxCapacity = 200 # Cache size for the compiled CSS selectors queries, set to 0 to disable caching + } + } + + directory { + #data = user-files/data # Folder where user's data (e.g. files used by Feeders) is located + #bodies = user-files/bodies # Folder where bodies are located + #simulations = user-files/simulations # Folder where the bundle's simulations are located + #reportsOnly = "" # If set, name of report folder to look for in order to generate its report + #binaries = "" # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target. + #results = results # Name of the folder where all reports folder are located + } + } + charting { + #noReports = false # When set to true, don't generate HTML reports + #maxPlotPerSeries = 1000 # Number of points per graph in Gatling reports + #useGroupDurationMetric = false # Switch group timings from cumulated response time to group duration. + indicators { + #lowerBound = 800 # Lower bound for the requests' response time to track in the reports and the console summary + #higherBound = 1200 # Higher bound for the requests' response time to track in the reports and the console summary + #percentile1 = 50 # Value for the 1st percentile to track in the reports, the console summary and Graphite + #percentile2 = 75 # Value for the 2nd percentile to track in the reports, the console summary and Graphite + #percentile3 = 95 # Value for the 3rd percentile to track in the reports, the console summary and Graphite + #percentile4 = 99 # Value for the 4th percentile to track in the reports, the console summary and Graphite + } + } + http { + #fetchedCssCacheMaxCapacity = 200 # Cache size for CSS parsed content, set to 0 to disable + #fetchedHtmlCacheMaxCapacity = 200 # Cache size for HTML parsed content, set to 0 to disable + #perUserCacheMaxCapacity = 200 # Per virtual user cache size, set to 0 to disable + #warmUpUrl = "http://gatling.io" # The URL to use to warm-up the HTTP stack (blank means disabled) + #enableGA = true # Very light Google Analytics, please support + ssl { + keyStore { + #type = "" # Type of SSLContext's KeyManagers store + #file = "" # Location of SSLContext's KeyManagers store + #password = "" # Password for SSLContext's KeyManagers store + #algorithm = "" # Algorithm used SSLContext's KeyManagers store + } + trustStore { + #type = "" # Type of SSLContext's TrustManagers store + #file = "" # Location of SSLContext's TrustManagers store + #password = "" # Password for SSLContext's TrustManagers store + #algorithm = "" # Algorithm used by SSLContext's TrustManagers store + } + } + ahc { + #keepAlive = true # Allow pooling HTTP connections (keep-alive header automatically added) + #connectTimeout = 60000 # Timeout when establishing a connection + #pooledConnectionIdleTimeout = 60000 # Timeout when a connection stays unused in the pool + #readTimeout = 60000 # Timeout when a used connection stays idle + #maxRetry = 2 # Number of times that a request should be tried again + #requestTimeout = 60000 # Timeout of the requests + #acceptAnyCertificate = true # When set to true, doesn't validate SSL certificates + #httpClientCodecMaxInitialLineLength = 4096 # Maximum length of the initial line of the response (e.g. "HTTP/1.0 200 OK") + #httpClientCodecMaxHeaderSize = 8192 # Maximum size, in bytes, of each request's headers + #httpClientCodecMaxChunkSize = 8192 # Maximum length of the content or each chunk + #webSocketMaxFrameSize = 10240000 # Maximum frame payload size + #sslEnabledProtocols = [TLSv1.2, TLSv1.1, TLSv1] # Array of enabled protocols for HTTPS, if empty use the JDK defaults + #sslEnabledCipherSuites = [] # Array of enabled cipher suites for HTTPS, if empty use the JDK defaults + #sslSessionCacheSize = 0 # SSLSession cache size, set to 0 to use JDK's default + #sslSessionTimeout = 0 # SSLSession timeout in seconds, set to 0 to use JDK's default (24h) + #useOpenSsl = false # if OpenSSL should be used instead of JSSE (requires tcnative jar) + #useNativeTransport = false # if native transport should be used instead of Java NIO (requires netty-transport-native-epoll, currently Linux only) + #usePooledMemory = true # if Gatling should use pooled memory + #tcpNoDelay = true + #soReuseAddress = false + #soLinger = -1 + #soSndBuf = -1 + #soRcvBuf = -1 + } + dns { + #queryTimeout = 5000 # Timeout of each DNS query in millis + #maxQueriesPerResolve = 3 # Maximum allowed number of DNS queries for a given name resolution + } + } + data { + #writers = [console, file] # The list of DataWriters to which Gatling write simulation data (currently supported : console, file, graphite, jdbc) + console { + #light = false # When set to true, displays a light version without detailed request stats + } + file { + #bufferSize = 8192 # FileDataWriter's internal data buffer size, in bytes + } + leak { + #noActivityTimeout = 30 # Period, in seconds, for which Gatling may have no activity before considering a leak may be happening + } + graphite { + #light = false # only send the all* stats + #host = "localhost" # The host where the Carbon server is located + #port = 2003 # The port to which the Carbon server listens to (2003 is default for plaintext, 2004 is default for pickle) + #protocol = "tcp" # The protocol used to send data to Carbon (currently supported : "tcp", "udp") + #rootPathPrefix = "gatling" # The common prefix of all metrics sent to Graphite + #bufferSize = 8192 # GraphiteDataWriter's internal data buffer size, in bytes + #writeInterval = 1 # GraphiteDataWriter's write interval, in seconds + } + } +} diff --git a/gatling-loadtest-demo/src/test/resources/logback.xml b/gatling-loadtest-demo/src/test/resources/logback.xml new file mode 100644 index 0000000000..a8fe714e7d --- /dev/null +++ b/gatling-loadtest-demo/src/test/resources/logback.xml @@ -0,0 +1,22 @@ + + + + + + %d{HH:mm:ss.SSS} [%-5level] %logger{15} - %msg%n%rEx + false + + + + + + + + + + + + + + + diff --git a/gatling-loadtest-demo/src/test/resources/recorder.conf b/gatling-loadtest-demo/src/test/resources/recorder.conf new file mode 100644 index 0000000000..f4ba60310b --- /dev/null +++ b/gatling-loadtest-demo/src/test/resources/recorder.conf @@ -0,0 +1,57 @@ +recorder { + core { + className=RecordedSimulation + encoding=utf-8 + harFilePath="" + headless=false + mode=Proxy + outputFolder="C:\\develop\\workspaces\\vjportalWorkspace\\gatling-loadtest-demo\\src\\test\\scala" + package="org.baeldung" + saveConfig=true + thresholdForPauseCreation=100 + } + filters { + blacklist=[ + ".*\\.css", + ".*\\.js", + ".*\\.ico" + ] + filterStrategy=BlacklistFirst + whitelist=[] + } + http { + automaticReferer=true + checkResponseBodies=false + followRedirect=true + inferHtmlResources=true + removeCacheHeaders=true + } + netty { + maxChunkSize=8192 + maxContentLength=100000000 + maxHeaderSize=20000 + maxInitialLineLength=10000 + } + proxy { + https { + certificateAuthority { + certificatePath="" + privateKeyPath="" + } + keyStore { + password="" + path="" + type=JKS + } + mode=SelfSignedCertificate + } + outgoing { + host="" + password="" + port=0 + sslPort=0 + username="" + } + port=8000 + } +} diff --git a/gatling-loadtest-demo/src/test/scala/Engine.scala b/gatling-loadtest-demo/src/test/scala/Engine.scala new file mode 100644 index 0000000000..0ac3abe948 --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/Engine.scala @@ -0,0 +1,13 @@ +import io.gatling.app.Gatling +import io.gatling.core.config.GatlingPropertiesBuilder + +object Engine extends App { + + val props = new GatlingPropertiesBuilder + props.dataDirectory(IDEPathHelper.dataDirectory.toString) + props.resultsDirectory(IDEPathHelper.resultsDirectory.toString) + props.bodiesDirectory(IDEPathHelper.bodiesDirectory.toString) + props.binariesDirectory(IDEPathHelper.mavenBinariesDirectory.toString) + + Gatling.fromMap(props.build) +} diff --git a/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala b/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala new file mode 100644 index 0000000000..32c986a072 --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/IDEPathHelper.scala @@ -0,0 +1,22 @@ +import java.nio.file.Path + +import io.gatling.commons.util.PathHelper._ + +object IDEPathHelper { + + val gatlingConfUrl: Path = getClass.getClassLoader.getResource("gatling.conf").toURI + val projectRootDir = gatlingConfUrl.ancestor(3) + + val mavenSourcesDirectory = projectRootDir / "src" / "test" / "scala" + val mavenResourcesDirectory = projectRootDir / "src" / "test" / "resources" + val mavenTargetDirectory = projectRootDir / "target" + val mavenBinariesDirectory = mavenTargetDirectory / "test-classes" + + val dataDirectory = mavenResourcesDirectory / "data" + val bodiesDirectory = mavenResourcesDirectory / "bodies" + + val recorderOutputDirectory = mavenSourcesDirectory + val resultsDirectory = mavenTargetDirectory / "gatling" + + val recorderConfigFile = mavenResourcesDirectory / "recorder.conf" +} diff --git a/gatling-loadtest-demo/src/test/scala/Recorder.scala b/gatling-loadtest-demo/src/test/scala/Recorder.scala new file mode 100644 index 0000000000..1372da6d41 --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/Recorder.scala @@ -0,0 +1,12 @@ +import io.gatling.recorder.GatlingRecorder +import io.gatling.recorder.config.RecorderPropertiesBuilder + +object Recorder extends App { + + val props = new RecorderPropertiesBuilder + props.simulationOutputFolder(IDEPathHelper.recorderOutputDirectory.toString) + props.simulationPackage("org.baeldung") + props.bodiesFolder(IDEPathHelper.bodiesDirectory.toString) + + GatlingRecorder.fromMap(props.build, Some(IDEPathHelper.recorderConfigFile)) +} diff --git a/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala b/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala new file mode 100644 index 0000000000..553e17e56f --- /dev/null +++ b/gatling-loadtest-demo/src/test/scala/org/baeldung/RecordedSimulation.scala @@ -0,0 +1,46 @@ +package org.baeldung + +import scala.concurrent.duration._ + +import io.gatling.core.Predef._ +import io.gatling.http.Predef._ +import io.gatling.jdbc.Predef._ + +class RecordedSimulation extends Simulation { + + val httpProtocol = http + .baseURL("http://computer-database.gatling.io") + .inferHtmlResources(BlackList(""".*\.css""", """.*\.js""", """.*\.ico"""), WhiteList()) + .acceptHeader("text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8") + .acceptEncodingHeader("gzip, deflate") + .acceptLanguageHeader("it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3") + .userAgentHeader("Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0") + + + + + + val scn = scenario("RecordedSimulation") + .exec(http("request_0") + .get("/")) + .pause(5) + .exec(http("request_1") + .get("/computers?f=amstrad")) + .pause(4) + .exec(http("request_2") + .get("/computers/412")) + .pause(2) + .exec(http("request_3") + .get("/")) + .pause(2) + .exec(http("request_4") + .get("/computers?p=1")) + .pause(1) + .exec(http("request_5") + .get("/computers?p=2")) + .pause(2) + .exec(http("request_6") + .get("/computers?p=3")) + + setUp(scn.inject(atOnceUsers(1))).protocols(httpProtocol) +} \ No newline at end of file