Unit Testing

12 Tools That I Use for Writing Unit and Integration Tests

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

Writing Clean Tests - Small Is Beautiful

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

Writing Clean Tests - Trouble in Paradise

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

My Favorite Blog Posts of 2014

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

10 Most Popular Blog Posts of 2014

The year 2014 is almost over, and this means that it is time to publish the most popular blog posts that I wrote during this year. I selected these blog posts by using Google Analytics. I selected all blog posts that were published during 2014 and picked the blog posts that had the most page […] Read more

Writing Tests for Data Access Code - Data Matters

When we write tests for our data access code, we use datasets for two different purposes: We initialize our database into a known state before our data access tests are run. We verify that the correct changes are found from the database. These seem like easy tasks. However, it is very easy to mess things […] Read more