-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
Display JUnit Tags in Dev UI (Continuous Testing) #42988
Display JUnit Tags in Dev UI (Continuous Testing) #42988
Conversation
Thanks for your pull request! Your pull request does not follow our editorial rules. Could you have a look?
This message is automatically generated by a bot. |
64161e8
to
a49e41f
Compare
Sounds like an interesting addition. Can you filter on them? /cc @phillip-kruger |
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.
Thanks @ueberfuhr - This is great. Let's wait for #42997 to be merged and then rebase this PR on top of that, so that you can use the badge that you fixed from qomponent.
Currently - no. But I could give it a try, if you confirm. Suggested SolutionI would not filter the results in the UI, but allow to restrict the test execution to a couple of selected tags, which would increase test performance. The Quarkus Test Runtime allows to set application properties to include and exclude tags: quarkus.test.include-tags=...
quarkus.test.exclude-tags=... This leads to an initial configuration of the Further affected classes (first analyzation):
|
Oh my question was just about being able to filter on a tag in the UI if you have a lot of tests (i.e. you click on a tag and only the tests with this tag are displayed and then you can drop the filter). But I'm not sure it makes sense? |
IMHO: Such a client-side filter would be nice, but searching then should not only be limited to tag(s), but also to test classes and test names. Such a search form would be a new requirement. Executing only tests with a given tag would filter the results in the UI too, but the filter then is server-side and more performant when repeating the tests. But I'm not sure if this is part of this PR, or if I should do this in another PR as a separate feature. In summary, I would say:
Who can decide? 😉 |
I agree. Let's get this PR in, and then we can look at more features. The client side filter should be easy to do. |
This comment has been minimized.
This comment has been minimized.
#42997 is merged now, so I'll fix my code ASAP (tomorrow morning). |
a49e41f
to
bdb91f4
Compare
Let me know when you are ready for a review |
1096aac
to
481c94f
Compare
This comment has been minimized.
This comment has been minimized.
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.
Thanks !
a96b148
to
812c871
Compare
1096aac
to
132ee7a
Compare
@ueberfuhr can you squash your commits into one please. Thanks |
If there are no tags, can we disable the option to display tags and have the default to not display them ? |
This comment has been minimized.
This comment has been minimized.
Yes, we can. 🙂 However, this needed a little refactoring of the If I only have tests without any tag, it looks like this: As soon as I introduce at least one tag: |
a5155e1
to
b302b93
Compare
Sure, done. |
b302b93
to
b73905e
Compare
I did a small change based on the findings from #43067. |
This comment has been minimized.
This comment has been minimized.
@brunobat not sure what's going on but |
b73905e
to
f5c4bdb
Compare
f5c4bdb
to
9ee1db7
Compare
This comment has been minimized.
This comment has been minimized.
@gsmet, is this PR now ready to merge, or is anything missing yet? |
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.
Nice work!
There's just one last micro thing and then it's good to go.
core/deployment/src/main/java/io/quarkus/deployment/dev/testing/JunitTestRunner.java
Outdated
Show resolved
Hide resolved
Oh nice one. Tags is underrated so nice to see it in Devui. Should work nicely with https://quarkus.io/guides/getting-started-testing#running-specific-tests Maybe a thing for the list of devui improvements for insights (or future one) @phillip-kruger |
Yes very cool. I'll show this on insights |
- introduce `tags` column - introduce toggle to hide the `tags`column - automatically hide `tags` column when JUnit tags are not used
9ee1db7
to
d17d9ca
Compare
@maxandersen @gsmet - for filtering tests for execution or for rendering, I've created #43208 for a discussion and a decision. 🙂 |
Status for workflow
|
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.
Awesome contribution, thanks!
I strongly use JUnits
@Tag
annotation to organize my tests, and I think this could be helpful to display them in the Dev UI. So I added this feature and a non-persistent checkbox to hide the tags, if needed.See these screenshots:


(
Q
is the shortcut for theio.quarkus.test.junit.QuarkusTest
tag, so the user can see which test is a Quarkus test, and which one isn't.)Hint:
The Vaadin Grid seems to recycle components, so the
<qui-badge>
too. However, this component is not implemented recyclable, which leads to inconsistent rendering. I have created a<qui-recyclable-badge>
, that we can remove when the original badge is fixed. (see PR: qomponent/qui-badge#4)What do you think - is this a helpful feature?