Add git clone test to GPT
What does this MR do?
- The MR adds initial
git_clone
performance test with a throughputGIT_CLONE_ENDPOINT_THROUGHPUT = 0.04
.- Response body should be specifically discarded in this test, otherwise
k6
fails due to OOM issue. - New
git_clone_data
setting in Env file.
- Response body should be specifically discarded in this test, otherwise
- Additionally the MR updates git tests documentation.
- Bumps GPT version to
2.9.0
.
Multiple git clone requests should not affect docker image performance: verified the test behaviour when ran a custom GPT docker image - no silent failures or exceptions were seen.
10k results
█ Git - Git Clone HTTP
█ Git - Get Refs List
█ Git - Git Clone Refs
data_received..................: 24 GB 329 MB/s
data_sent......................: 22 kB 299 B/s
group_duration.................: avg=9034.44ms min=110.93ms med=11823.18ms max=19771.86ms p(90)=16082.30ms p(95)=17419.26ms
http_req_blocked...............: avg=3.84ms min=0.00ms med=0.01ms max=32.99ms p(90)=31.83ms p(95)=32.43ms
http_req_connecting............: avg=3.81ms min=0.00ms med=0.00ms max=32.87ms p(90)=31.73ms p(95)=32.24ms
http_req_duration..............: avg=6593.46ms min=110.63ms med=345.46ms max=19643.20ms p(90)=14675.82ms p(95)=16402.36ms
{ expected_response:true }...: avg=6593.46ms min=110.63ms med=345.46ms max=19643.20ms p(90)=14675.82ms p(95)=16402.36ms
http_req_failed................: 0.00% ✓ 0 ✗ 76
http_req_receiving.............: avg=6253.60ms min=0.13ms med=95.95ms max=19108.94ms p(90)=14053.97ms p(95)=15862.19ms
http_req_sending...............: avg=0.07ms min=0.03ms med=0.05ms max=0.44ms p(90)=0.12ms p(95)=0.15ms
http_req_tls_handshaking.......: avg=0.00ms min=0.00ms med=0.00ms max=0.00ms p(90)=0.00ms p(95)=0.00ms
✓ http_req_waiting...............: avg=339.79ms min=94.42ms med=251.47ms max=702.18ms p(90)=592.56ms p(95)=636.05ms
✓ http_reqs......................: 76 1.059152/s
iteration_duration.............: avg=13205.90ms min=407.27ms med=13419.05ms max=19771.91ms p(90)=16593.76ms p(95)=17824.64ms
iterations.....................: 37 0.51564/s
✓ successful_requests............: 100.00% ✓ 74 ✗ 0
vus............................: 1 min=1 max=8
vus_max........................: 8 min=8 max=8
All k6 tests have finished after 77.17s!
█ Results summary
* Environment: 10k
* Environment Version: 14.3.0-pre `649f624f034`
* Option: 60s_200rps
* Date: 2021-09-15
* Run Time: 1m 17.17s (Start: 21:36:07 UTC, End: 21:37:24 UTC)
* GPT Version: v2.9.0
NAME | RPS | RPS RESULT | TTFB AVG | TTFB P90 | REQ STATUS | RESULT
----------|-----|------------------|----------|-------------------|----------------|----------------
git_clone | 8/s | 1.06/s (>0.26/s) | 339.79ms | 592.56ms (<800ms) | 100.00% (>99%) | Passed
Related issues
Checklist
-
Ensure test data for the new endpoint is representative. We recommend using large data ("edge cases") in performance tests. The impact of optimizations is more visible on the big numbers and large data may expose more performance bottlenecks. -
Fill in @endpoint
,@example_uri
,@description
, and@gpt_data_version
tags with the information regarding the new test.-
@gpt_data_version
should be generally1
unless you know the test is for data that's in a specific version.
-
-
Create a bug if the endpoint response time is above the performance main target (200 ms)
.- Specify created issue link under
@issue
tag.
- Specify created issue link under
-
Consider specifying the additional @flags
:-
unsafe
- required for Unsafe tests. Ensure that data before and after the test is consistent. -
search
- labels Search related tests. -
dash_url
- labels Web tests with the check if the endpoint path has a dash \ redirect.
-
Edited by Nailia Iskhakova