-
Notifications
You must be signed in to change notification settings - Fork 0
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
A mostly tooling review from reddit #3
Comments
Greetings to @LIttleAncientForestKami! Thank you for spending so much time to check out the project and provided me with the suggestion. I would like to summarize what I have learned from you so far:
I feel like I have to type a long response to you to show my gratitude. Sorry it is not organized :). I will make the change during the week while job hunting to keep myself busy. Happy New Year and wish you a fruitful 2023! |
Re: WireMock. What you wrote, adjust to readme and that's it. Hope this helps and all the best to you in your search. |
Hi and all the best in the new year 2023! I hope it will be a better year for you, especially the ending!
I've seen your post on Reddit and decided to give some feedback. Others focused mostly (if not only) on your code. I'll focus on everything else then. In as-I-spotted-it order:
com.tnite
package suggests you own thetnite.com
domain. Java packages are RDNS-like for a reason. Consider repackaging asio.github.januschung
. Or leave, it's not a major problem unless you intend to publish the library on Maven Central or other sites like that.app.jar
, yet Maven produces afull-jar-name-with-snapshot.jar
- did not try so perhaps a non-issue but ain't this a problem?POM
Tests
The largest tip I can give you here is: consider the test pyramid. You may want to layer your tests and add Maven failsafe plugin for tests that are not UNIT ones (aka: they talk with something, a file system, a web stack and protocol, a foreign service).
API tests should be something here, after all, REST service is what you are doing. While we're on REST topics, have you looked at National Bank of Belgium REST design guide? It's on wiki on their github. You may want to look at that and see if you don't want to introduce some changes in your REST endpoints.
Performance tests are something I'd be interested in when evaluating a library like yours. How performant is it? Consider a simple test of brute forcing your API. I'd say JMeter will be rather easy to use here and you can add these tests in this repository and add a docs section instructing how to launch them. If you have SDKman or ASDF installing JMeter is done via single command
sdk i jmeter
and there you go, typejmeter
and start using.Feel free to go for Gatling of you want a nicer/more modern/often paid tool.
WireMock
There's a project that your project will be compared to. My advice: add a section to readme saying something like "Yeah, it's similar, no I did not know WireMock at the time of writing" or "Screw WireMock, use my library because..." or "it's a practice project, so it does duplicate some features..." - anything that will explain this to your satisfaction and will allow you to point all the folks asking about it to readme. :-)
JavaDocs
Notably absent. Best feature of JavaDocs are the examples. Please add examples to your public APIs, helping a junior programmer understand how to use this API and what to use it for.
BTW, if you upgrade to Java 18, you get
@snippet
tag in Javadocs. https://docs.oracle.com/en/java/javase/18/code-snippet/index.htmlAll the best to you and happy New Year!
The text was updated successfully, but these errors were encountered: