Skip to content

Add k6 Scenario Test for Updating a Group (PUT /groups/:id)

Valerie Burton requested to merge scenario-api-update-group into main

What does this MR do?

This MR adds a k6 scenario test to measure performance for creating a project using PUT /groups/:id endpoint by creating a group and updating the name and path for that group.

I've decided to update name and path as we have seen some similar issues in the past around this: gitlab-org/gitlab#27758 (closed) (though this one in particular was a group transfer, rather than a direct update)

Ideally, in future iterations, we may be able to tweak this test to allow a custom group to be passed in, or to have the group be part of a larger hierarchy (ex: many_groups_and_projects as the top group)

I've run this locally against the 50k environment using 60s_1000rps.json options.

50k_v15-1-0-pre_2022-06-09_154111_results.txt

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 generally 1 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.
  • 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.
  • Web tests

Merge request reports