Contract Tests - Parameterised Test Cases
June 28, 2023This is the final installment of a three-part series about contract tests. In the first blog post we’ve discussed the rationale behind contract tests. Next we’ve looked at how ...
Read more ...This is the final installment of a three-part series about contract tests. In the first blog post we’ve discussed the rationale behind contract tests. Next we’ve looked at how ...
Read more ...In the previous blog post, we’ve discussed the rationale behind contract tests. They are used for exercising those parts of an application that communicate with other parts of ...
Read more ...One of my favorite awesome talks of all time is Integrated Tests Are a Scam by J.B. Rainsberger. I must admit that the title has a clickbait vibe to it. However, I very muc...
Read more ...Back in 2003, Brian Marick wrote an excellent article series about agile testing. There he described the concept of the Testing Quadrant. To my recollection this used to be a ...
Read more ...I’ve heard that you’ve been working on this new feature for the payroll system based on the newly voted government legislation? Yes, I am. How is it going? Seems like a major...
Read more ...In the previous blog post, we discussed how to use Approval Tests for verifying generated PDF documents. In this blog post I’m going to show how to extend the Approval Test li...
Read more ...A while back I was confronted with a part of a legacy system that generates PDF documents. This legacy system used a well known library for generating the requested PDF files. ...
Read more ...Most test frameworks out there have the capability to disable tests. This is usually done by adding some kind of annotation that instructs the test runner to ignore an individu...
Read more ...I’m very happy to announce that Writing Maintainable Unit Tests is also available as a paper book. Both the ebook and the paper book have been completely self-published. I must...
Read more ...Do you have 15 minutes to spare? Sure, what can I do for you? Well, you know I’ve been working on that new feature we were discussing at the whiteboard last week. I’ve finishe...
Read more ...I’m very happy to announce that I’ve finished writing my first book Writing Maintainable Unit Tests. What an amazing journey it has been. I would never have thought that I woul...
Read more ...Using inheritance for test classes is not a desirable thing as it introduces a number of issues. An abstract base class quite often originates from the desire to share and reus...
Read more ...Once in a while I get asked the question whether one should write solitary tests for logging functionality. My answer to this question is the typical consultant answer: “It dep...
Read more ...Previously we discussed why solitary tests should be easy to read. Sometimes, the readability of solitary tests is affected by those developers who overcomplicate or overenginee...
Read more ...Occasionally someone asks me the question whether it’s necessary to test the code of solitary tests? Usually this question is ushered by folks who are opposed to the idea of au...
Read more ...So I noticed that you completed that feature that we’ve been pair programming yesterday? Yes, I was a little bored yesterday evening. So I decided to continue working on it Gr...
Read more ...Solitary tests never cross the process boundary in which they are executed. This means that a solitary test never executes code that talks to a database, communicates across the...
Read more ...I’m very happy to announce that the first draft of my book Writing Maintainable Unit Tests has been published on LeanPub. It’s the written counterpart of my video course, with ...
Read more ...One of the most commonly asked questions in developer communities regarding Test-Driven Development and unit testing is whether one should write unit tests for private methods,...
Read more ...Test-Driven Development is a discipline that exists for about two decades now. Unfortunately, to this very day, it is still not without controversy. Most professional developer...
Read more ...In the previous blog post, we’ve talked about avoiding excessive specification of test doubles. This is just one in a series of “good practices” for using test doubles in solit...
Read more ...Previously we’ve discussed the different kinds of test doubles. By using test doubles in our solitary tests, we also introduce more coupling between the test code and the imple...
Read more ...When stating the definition of a solitary test, we mentioned that they have two constraints: The code being exercised by these tests never cross the process boundary in whic...
Read more ...In the previous blog post, we’ve talked about indirect inputs and outputs when a unit test exercises a Subject Under Test. The examples shown previously demonstrate the use of ...
Read more ...Previously we discussed what state and behaviour verification is about. Depending on the nature of the production code that we’re designing, we might decide to apply one approa...
Read more ...When reasoning about types of automated tests, I find it quite useful to reason about two different categories, namely solitary and sociable tests. Also see the test pyramid fo...
Read more ...In a previous blog post, we discussed the test pyramid and why it is a useful model to reason about a healthy mix of solitary and sociable tests. I mentioned that at t...
Read more ...Previously, we touched on two different categories of automated tests, namely solitary and sociable tests. Also we discussed how and why the test pyramid is a useful model to ...
Read more ...Last week I published my very first video course titled Writing Maintainable Unit Tests. It surely has been a very learnful experience. Going through the process of creating th...
Read more ...I’m very proud to announce that my first video course has been published on Udemy. This course teaches software developers how to write maintainable and readable unit tests. It...
Read more ...In the previous blog post, we touched on two different categories of automated tests, namely solitary and sociable tests. We also mentioned that in order to build maintainable ...
Read more ...It’s more than fair to say that the terminology used in the world of automated tests can be a bit overwhelming. Software people have uncovered all sorts of tests in a wide vari...
Read more ...Test-Driven Development is a discipline that exists for almost two decades now. Unfortunately, to this very day, it is still not without controversy. Most professional developer...
Read more ...Developers are lazy. There’s nothing new about that. We even pride ourselves on it. Sometimes being lazy is a good thing, but most of the time it’s not something we should brag ...
Read more ...A while back I stumbled upon this talk titled Built-in Fake Objects. After I’ve watched the first 20 minutes or so, I was so worked up that I almost threw away my iPad just out ...
Read more ...People who know me personally know that I like to go for a long run on a regular basis. I sit and work at a desk all day. So as part of the work I do, labouring the codes, I go ...
Read more ...A while back, I was doing a code review. At some point I encountered some constructs that I see quite often. While I was describing and building my case, I was thinking that I ...
Read more ...I’ve been removing a couple of dead features this week. You know, those features that senior people in organisations like to tell epic war stories about. Those mighty conversati...
Read more ...The first time I read the GoF book, I didn’t understand it. This was because I didn’t had a decent understanding of the principles of object-oriented programming at the time. A...
Read more ...I just want to get something of my chest that is bothering me for quite some time now. It’s not going to be a rant of some sort, but merely a couple of observations for ...
Read more ...In my previous post, I outlined an issue that I had with Castle Windsor for configuring multiple chains of responsibility. I want to have different ProcessConsumer classes that ...
Read more ...A couple of months ago, I applied the Chain of Responsibility pattern for the very first time. I've never encountered a scenario before where applying this pattern would be a va...
Read more ...Ray Houston has written this post on his blog named Single-Responsibility Versus Needless Complexity. His post contains the following code sample of which he suspects that it po...
Read more ...I'm having more and more mixed feelings about properties in .NET, or accessor methods in general, as properties compile to get_xxx/set_xxx methods behind the covers. I've never ...
Read more ...Earlier this week I went back to work after a refreshing (and very much needed) vacation. During this past week I participated in some interesting discussions that made me think...
Read more ...Suppose we are building yet-another-order-basket-application. We have the requirement for adding items to an order, otherwise the business of our entire company falls down and w...
Read more ...This is what I consider to be a good architecture for long-lived business applications and how I like to design them. Actually, our current and past two projects apply this desi...
Read more ..."Let us cleanup and fix this code later so we can meet our deadline".
Read more ...It should solve a problem and thus it must be valuable to its users. In short, it should do what it must do and simply work. It should be very easy to change. Every piece of...
Read more ...A while ago, I wrote a blog post regarding Test Data Builders Refined. Earlier this week, I wrote a very simple base class that provides an implicit cast operator for the builde...
Read more ...Last year, I blogged about Test Data Builders here and here. I still use them heavily in my unit tests for creating objects with test data. Heck, I also use this pattern for flu...
Read more ...Earlier this week I was in a meeting were someone stated that it was better to write your own IOC container than just using an existing one (the most excellent Castle Windsor in...
Read more ...From each of these technologies I have a book laying around on my bookshelf somewhere. For WF, I have bought Essential Windows Workflow Foundation about 1 year ago. Since then, ...
Read more ...This blog has been silent for a while, and for good reason. Besides experiencing symptoms of writer's block, I've also been playing around with a lot of new stuff (at least new...
Read more ...A while ago, I blogged about using Test Data Builders as opposed to the Object Mother pattern. Here are some links to additional tips and tricks: Tricks with Test Data Builders...
Read more ...Scott Guthrie announced the new ASP.NET MVC framework at the Alt.Net conference today. I blogged about this earlier on. Jeffrey Palermo who is attending the conference has put s...
Read more ...When writing unit tests, I frequently have an issue with creating objects that contain some test data. One approach is to call the constructor of the class at hand in every test...
Read more ...Mark Monster has written an excellent article on Dependency Injection in the newest .NET Magazine (it's no MSDN magazine, but hey, its free of charge). Nonetheless, there are tw...
Read more ...This is the title of an awesome talk that Chris Richardson gave at the Spring One 2007 conference in Antwerp. You can watch this session online. He gives a really nice introduct...
Read more ...Good code should read like a good book. Combine these two and you get a book like Beautiful Code: Leading Programmers Explain How They Think. I've had it on my wishlist for a wh...
Read more ...Daniel Simmons, talks about persistence ignorance and how it will be incorporated in next version(s) of the ADO.NET Entity Framework. In a previous post, I already mentioned the...
Read more ...It seems that Jimmy Nilsson also has a lot of trouble with ASP.NET. As you know (or might not know), I'm not enjoying my experiences with ASP.NET either. Enough with the ASP.NET...
Read more ...A while ago I blogged about Domain-Driven Design and how I like it so much. I mentioned that Tim McCarthy is writing a book that I'm pretty much looking forward to. Today he ann...
Read more ...Essential reading from Jean-Paul S. Boodhoo about building a solid core. This post contains a number of truths that I want to point out. Many developers need to spend more time...
Read more ...This is just about the best thing I've heard in the last couple of years. Scott Guthrie showed a prototype of an MVC framework on the MVP Summit (ship it!). This framework can b...
Read more ...This post of Jeremy D. Miller hits it right on the head: In .NET development, and especially ASP.NET WebForms development, you often have to go out of your way to create testa...
Read more ...I'm so much into Domain-Driven Design! I already read Applying Domain-Driven Design and Patterns and I just finished reading Domain-Driven Design: Tackling Compl...
Read more ...Another perspective from Steve Eichert. He claims that developers are not leaving .NET because of what Rails is doing right, but instead because of what .NET is doing wrong. Per...
Read more ...While I was doing the dishes today, I was thinking about the programming model of ASP.NET and the fact that I don't like it (just as don't like doing the dishes). The model it u...
Read more ...A very nice post by Uncle Bob about rapid software development. We've all done it! Pulling together those quick & dirty hacks in order to meet our deadline. We've created so...
Read more ...June 28, 2023
April 12, 2023
February 1, 2023
June 15, 2022
February 2, 2022
The opinions expressed on this blog are my own personal opinions. These do NOT represent anyone else’s view on the world in any way whatsoever.
Thank you for visiting my website. I’m a professional software developer since Y2K. A blogger since Y2K+5. Author of Writing Maintainable Unit Tests. Provider of training and coaching in XP practices. Curator of the Awesome Talks list. Thinking and learning about all kinds of technologies since forever.
(+32) 496 38 00 82
info @ principal-it .be