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
Have configurable verbosity on none passing test #84
Comments
Hello, I'd like to give this a try. Thanks, Kind regards, |
Hello Fabrice, The main use case would be to limit what we printed on the console during the execution of a CI build. If one test fails, the developer could launch it from his computer with all the information that could help him to fix the issue. Let's take an N+1 select example:
We could only keep this part in the CI build
We could also provide a way not to display the JDBC batching suggestions (see With
I prefer to configure independently, the quantity of information displayed on the console for SQL and JVM annotations. Having said that, the user could limit the console display with Implementation tips: see SystemProperties class. @kanedafromparis (the creator of this issue) and @FTarfasse, I will be glad to have your opinions. Kind regards, Jean |
Hi Jean, Thank you for the hints and insights. I think the question would be to know if we base this feature on a boolean logic (display or no display) or can / should we have more nuances in terms of informations (nothing, something, everything) ? Thanks, Kind regards, |
Hi Fabrice,
Perhaps. I just would like that the configuration stays simple to use and explicit.
It seems an excellent idea to discuss from a first implementation. Thanks Fabrice. Don't hesitate if you have any questions. Kind regards, Jean |
Hi Jean, Here's the code based on today's discussion (thanks again for your time :) ). Note that I have:
As a reminder for our future selfves (especially me hum ...), local mvn clean install is mandatory before trying anything from the command line such as:
Cheers, |
Hi Fabrice, You are welcome! The modifications seem ok for me. Could you please rebase on master and after that create a PR? So, I could merge the changes. Would you like to work on @ProfileJvm part? A
Kind regards, Jean |
Hi Fabrice, I refactored the code. SELECT suggestions are now gathered here. Kind regards, Jean |
Hi Jean, Duly noted ! I am updating everything in my local branch based on your refactoring. I'll send a PR today hopefully. Kind regards, |
Jean, What kind of behavior should be expected from a disabled @ProfileJvm display ? Should we keep JFREventsLoader message ? This class handles this part of the message in the @ProfileJvm report system (it is the first part before the detailled part):
After spending some time on this and as the display of this annotation is not related to failing tests, I don't see a real use case where this behavior will really shine (from my understanding of course). Can you give me your take on this ? Thanks, Kind regards, |
Fabrice,
Yes.
With @ProfileJvm, JVM is profiled with JDK Flight Recorder (JFR). The console displays the path to the recording file. The user can open this file with JDK Mission Control, a graphical user interface to explore and analyze the JVM profiling. Other annotations, like @MeasureHeapAllocation or @DisplaySqlOfTestMethod Body, are not done to develop non-regression tests. Kind regards, Jean |
Thanks @kanedafromparis for the idea and @FTarfasse for the implementation! |
Description
Some Feedback on non-working test (for instance N+1 select) are very long.
It's useful but it could be drawing (overwhelming) sometime.
It also could fill the CI system
It could be nice have its verbosity configurable
Implementation ideas
(If you have any implementation ideas, they can go here.)
It would be great to works with -Dquickperf.hints=0
The text was updated successfully, but these errors were encountered: