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

Test tooling: support long term test migration of Gingko textual labels (v1) to first class labels (v2) #2679

Open
dhiller opened this issue Mar 27, 2023 · 4 comments
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@dhiller
Copy link
Contributor

dhiller commented Mar 27, 2023

Support long term migration from Ginkgo v1 style labels to v2 style first class Ginkgo labels

test-label-analyzer cli

Introduces a new cli for extraction of label data from tests inside a given code base. Initial use case is of course kubevirt/kubevirt, but might be useful for other Ginkgo based projects as well.

Given for input a configuration file that defines the category meta data, i.e. a set of test categories, where each category definition contains what Ginkgo labels and textual labels inside a test definition comprise of said category, this tool then serves two main use cases:

  • generate stats about what tests are in a certain category
  • given certain categories generate a string that can be used directly with Ginkgo --filter or --skip flags, or --label-filter flag for Ginkgo labels

usecase: generate stats about what tests are in a certain category

First example here is a stats page of which tests are currently in quarantine and for how long.

Other examples would be:

  • how many tests do we have for a certain category definition?
  • what label instances do exist inside the code base and how ofter is each one used?
  • ...

usecase: generate strings that can be used directly with Ginkgo old style (focus/skip) and new style filters (label-filter)

Given a certain category configuration (in yaml or whatever suits best) the tool generates the strings that are required to filter exactly for those tests the configuration describes.

Next step would be to run those tests directly.

@kubevirt-bot
Copy link
Contributor

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@kubevirt-bot kubevirt-bot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jul 18, 2023
@kubevirt-bot
Copy link
Contributor

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.

If this issue is safe to close now please do so with /close.

/lifecycle rotten

@kubevirt-bot kubevirt-bot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Aug 17, 2023
@dhiller
Copy link
Contributor Author

dhiller commented Aug 17, 2023

/remove-lifecycle rotten
/lifecycle freeze

@kubevirt-bot kubevirt-bot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 17, 2023
@dhiller
Copy link
Contributor Author

dhiller commented Aug 17, 2023

/lifecycle frozen

@kubevirt-bot kubevirt-bot added the lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. label Aug 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

2 participants