Skip to content
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

Rework Integration Tests #386

Open
timuthy opened this issue Jul 28, 2022 · 1 comment
Open

Rework Integration Tests #386

timuthy opened this issue Jul 28, 2022 · 1 comment
Labels
area/dev-productivity Developer productivity related (how to improve development) area/quality Output qualification (tests, checks, scans, automation in general, etc.) related area/testing Testing related kind/enhancement Enhancement, improvement, extension lifecycle/rotten Nobody worked on this for 12 months (final aging stage) priority/3 Priority (lower number equals higher priority)

Comments

@timuthy
Copy link
Member

timuthy commented Jul 28, 2022

What you would like to be changed:
After having most of the etcd assets transitioned to components (see #278) we should revisit existing integration tests (envtests in /controllers) and reduce the size to an appropriate scope.

Motivation (Why is this needed?):
Today, etcd-druid has many integration tests that require a long time to run (~ 25m) and often test scenarios that are already covered by the lately introduced unit tests for different components.

For instance: It's redundant to have Envtests for every supported storage provider if we can verify the same in the scope of unit tests which are cheaper and more precise towards the test scenario, i.e. checking if the StatefulSet is created/updated properly.

A good summary about the purpose of integration tests can be found here: https://github.com/gardener/gardener/blob/master/docs/development/testing.md#purpose-of-integration-tests

At the same time, some of the existing integration tests do not properly clean up objects that were created before or during the tests. This potentially blocks controller workers for further tests and makes the entire suite flaky.

Approach/Hint to the implement solution (optional):
Please follow https://github.com/gardener/gardener/blob/master/docs/development/testing.md for best practices.

@timuthy timuthy added area/dev-productivity Developer productivity related (how to improve development) area/quality Output qualification (tests, checks, scans, automation in general, etc.) related kind/enhancement Enhancement, improvement, extension area/testing Testing related labels Jul 28, 2022
@abdasgupta
Copy link
Contributor

We can optimize the tests in ETCD Druid by removing some of the redundant tests. We will pick up the task when we are less overloaded with other tasks.

@abdasgupta abdasgupta added the priority/3 Priority (lower number equals higher priority) label Jan 6, 2023
@gardener-robot gardener-robot added the lifecycle/stale Nobody worked on this for 6 months (will further age) label Sep 15, 2023
@gardener-robot gardener-robot added lifecycle/rotten Nobody worked on this for 12 months (final aging stage) and removed lifecycle/stale Nobody worked on this for 6 months (will further age) labels May 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/dev-productivity Developer productivity related (how to improve development) area/quality Output qualification (tests, checks, scans, automation in general, etc.) related area/testing Testing related kind/enhancement Enhancement, improvement, extension lifecycle/rotten Nobody worked on this for 12 months (final aging stage) priority/3 Priority (lower number equals higher priority)
Projects
None yet
Development

No branches or pull requests

3 participants