I think that software development is more than just a job. I see myself as an artisan who is trying to get better every day. The "easiest way" to do this is to find a few good tools and find the answers to these questions: When should I use the tool X? How should I […] Read more
Integration Testing
My previous blog post described how we can add integration tests to our Gradle build. A few days after I had published that blog post, I learned that we don’t have to do everything from the scratch (thanks David) because we can simplify our build script by using the Gradle TestSets plugin. This blog post […] Read more
Because the standard project layout of a Java project defines only one test directory (src/test), we have no standard way to add integration tests to our Gradle build. If we want to use the standard project layout, we can add integration tests to our Gradle build by using one of the following options: We can […] Read more
We have learned that "clean" unit tests might not be as clean as we think. We have done our best to make our unit tests as clean as possible. Our tests are formatted properly, use domain-specific language, and avoid excessive mocking. Nevertheless, our unit tests are not clean because: When we make changes to the […] Read more
If our code has obvious faults, we are very motivated to improve it. However, at some point we decide that our code is "good enough" and move on. Typically this happens when we think that the benefits of improving our existing code are smaller than the required work. Of course, if we underestimate our return […] Read more
Yesterday I published the list of the most popular blog posts that I wrote in 2014. I also promised to choose my favorite blog posts and publish that list on my blog. This year I decided to select blog posts that helped me to learn something new. Here are my favorite blog posts that I […] Read more