Just published an article on why static methods in Java code can be a hindrance and how to avoid them. Check it out and learn how to improve your code! #Java#staticmethods#coding#codeimprovement
https://t.co/BMiCuoLzna
The contemporary testing approach simplifies the pyramid:
Base level: Focus on Business Functionality Tests to ensure core features work as expected. Mock the external.
Top level: Implement Integration Testing for smooth connections with external systems.
#SoftwareTesting
@housecor I think there are better ways to collaborate than code reviews.
User acceptance tests should be changed by "iterate and listen to your users' feedback".
@bazlur_rahman Needing to test a class's private methods signals that there's a problem with your design.
It usually means that the Single Responsibility Principle (SRP) has been compromised.
@S_Dietrich@bootify_io That's a good point. With boundary testing you can pragmatically achieve that.
It's true tough that there's no 100% theorical assurance that you won't have any error.
What I meant is that the focus should not be in code line coverage.
@PLyczkowski I do kind of the same. I specify the signature of the methods that I need in the "high level" algorithm and I implement the details later.
@srbaker@fosseng Exactly. Do not plan for it in advance, separate your things in bounded contexts. When the time to split it comes, you and the team will know. Let changes come naturally.
@bootify_io You'll have external dependencies that could fail as well, but there's not too much you can do about it.
I care about my software, and what I'm responsible of, working.
It's also beneficial to have 100% integration test coverage to ensure error-free code.
@simas_ch@archtests@structure101 Multi-module Maven projects offer faster feedback for structural issues, especially when using an IDE with POM validation but also because it's the first thing checked when running the build.
I like the high cohesion of having a dependency manager who also checks the issues.
Remember, #DTOs are essential for efficient data exchange, but they should NEVER be mixed with your domain entities! Keep your data clean and separate for a maintainable and scalable codebase. ππ§Ή #Programming#BestPractices