E2E: Retry GitLab Purchase On Lock Competition Error
What does this MR do and why?
Relates to https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/6813
This MR adds a retry for purchasing an order on the GitLab checkout page if a Zuora lock competition error is experienced. This should help stabilize flaky failures such as #425426 (closed).
This is the same workaround that has been added to the CustomersDot E2E test framework in https://gitlab.com/gitlab-org/customers-gitlab-com/-/merge_requests/7955
How to set up and validate locally
Numbered steps to set up and validate the change are strongly suggested.
- Retrieve
GITLAB_USERNAME
,GITLAB_PASSWORD
,GITLAB_QA_USER_AGENT
,GITLAB_ADMIN_USERNAME
,GITLAB_ADMIN_PASSWORD
,GITLAB_QA_ACCESS_TOKEN
andGITLAB_QA_ADMIN_ACCESS_TOKEN
for Staging from the Gitlab-QA 1Password vault and export them as env vars locally - Run a test against Staging that uses one of the modified methods from
qa/qa/flow/purchase.rb
, such as:
QA_GITLAB_URL=https://staging.gitlab.com bundle exec rspec qa/specs/ee/browser_ui/11_fulfillment/purchase/purchase_ci_spec.rb
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Valerie Burton