Fast Remote Service Tests

February 25th, 2014
Testing code that interacts with remote services is often pretty hard. There are a lot of tradeoffs that influence what tests you can write and the amount of tests to write. Most of the times you have zero control over the data you get from the service, which makes assertions tough to say the least. Read more

Code Katas

February 10th, 2014
In this post I want to talk about code katas. Most of you have heard of code katas before, many of you probably have done some katas. A while ago code katas were getting a fair bit of attention. Including of course some skepticism. Read more

Acceptance Test Driven Development

January 21st, 2014
In this short series about acceptance testing I previously wrote about collaboration between testers and developers and how acceptance tests help to define clear requirements of a system. Read more

Acceptance Tests as Specifications

December 18th, 2013
In my previous article about acceptance testing I wrote about how tools like FitNesse and Cucumber focus on collaboration between developers and testers. Of course that’s not all these tools help us with. In this post we’ll take a deeper look at acceptance testing as a practice and see what the tools gain us. Read more

Acceptance Testing: Blaming the Tools

November 29th, 2013
About 5 years ago I was on a project to build a system for collateral management. The system was connected to a large financial network, and got its instructions through standardized financial messages. Read more

Wishful Programming

November 20th, 2013
Wishful Programming (or: Programming by Wishful Thinking) is something I heard about for the first time a couple of years ago. It is a very powerful programming practice, but I found many programmers are unaware of it. Read more

Lambdas for Fluent and Stable APIs

November 19th, 2013
A few weeks ago I wrote an introduction on Java 8 lambdas. In this introduction I explained what a lambda is and how to use them in conjunction with the new Stream API, that is also introduced in Java 8. Read more