diff options
-rw-r--r-- | qa/Rakefile | 6 | ||||
-rw-r--r-- | qa/load/artillery.yml | 17 | ||||
-rw-r--r-- | qa/qa/tools/generate_perf_testdata.rb | 2 |
3 files changed, 14 insertions, 11 deletions
diff --git a/qa/Rakefile b/qa/Rakefile index d0101740f1a..7ac018f7286 100644 --- a/qa/Rakefile +++ b/qa/Rakefile @@ -27,9 +27,9 @@ task :run_artillery_load_tests do end urls = YAML.safe_load(File.read(urls_file)) - ENV['HOST_URL'] = urls[:host] - ENV['LARGE_ISSUE_URL'] = urls[:large_issue] - ENV['LARGE_MR_URL'] = urls[:large_mr] + ENV['HOST_URL'] = urls["host"] + ENV['LARGE_ISSUE_URL'] = urls["large_issue"] + ENV['LARGE_MR_URL'] = urls["large_mr"] end sh('artillery run load/artillery.yml -o report.json') diff --git a/qa/load/artillery.yml b/qa/load/artillery.yml index e2c3c293d8b..17d253ec480 100644 --- a/qa/load/artillery.yml +++ b/qa/load/artillery.yml @@ -1,15 +1,18 @@ config: target: "{{ $processEnvironment.HOST_URL }}" + http: + pool: 10 # All HTTP requests from all virtual users will be sent over the same <pool> connections. + # This also means that there is a limit on the number of requests sent per second. phases: - - duration: 60 - arrivalRate: 1 + - duration: 30 + arrivalRate: 10 name: "Warm up" - - duration: 120 - arrivalRate: 1 - rampTo: 50 + - duration: 90 + arrivalRate: 10 + rampTo: 100 name: "Gradual ramp up" - - duration: 60 - arrivalRate: 50 + - duration: 90 + arrivalRate: 100 name: "Sustained max load" scenarios: - name: "Visit large issue url" diff --git a/qa/qa/tools/generate_perf_testdata.rb b/qa/qa/tools/generate_perf_testdata.rb index 0a0dbdf5b15..4fda49c8e48 100644 --- a/qa/qa/tools/generate_perf_testdata.rb +++ b/qa/qa/tools/generate_perf_testdata.rb @@ -46,7 +46,7 @@ module QA threads_arr.each(&:join) STDOUT.puts "\nURLs: #{@urls}" - File.open("urls.yml", "w") { |file| file.puts @urls.to_yaml } + File.open("urls.yml", "w") { |file| file.puts @urls.stringify_keys.to_yaml } STDOUT.puts "\nDone" end |