-
Notifications
You must be signed in to change notification settings - Fork 49
[Testing / CI/CD] Ability to automate scale testing with a mock server and test different datasets, loadgen, etc. and run it as a part of CI/CD (#274) #274
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: huaxig The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
jjk-g
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
overall lgtm
Thoughts on creating a top level tests directory and putting the e2e directory under tests?
| @@ -0,0 +1,18 @@ | |||
| data: | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this makes more sense in the tests/e2e dir and probably should have a more detailed name. Something like "e2e_simple_mock_client.yaml"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sgtm on the e2e top level dir, still think this belongs in e2e dir instead of examples with a more descriptive name
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it makes sense, I will move and rename the file
Thanks for raising this — great point. In most open-source Python projects, there are two common patterns for organizing E2E tests:
Given our current setup — with Keeping E2E tests in a separate top-level
CC: @jjk-g |
Summary
This introduces an e2e testing using a mock server to enable automated scale testing as part of our CI/CD pipeline.
Key changes include:
basic_mock_client_benchmarkis added. This test runs a benchmark with the mock client, generates reports, and asserts key metrics like achieved request rate and success count.run_benchmark_minimalfunction is created to simplify the process of running benchmarks in tests. It handles configuration, execution, and result parsing.pdm run test:e2ecommand to easily run the end-to-end tests in our CI/CD workflow or Dev Env.Note: there are few more commits to add test to CI workflow