DEV Community

Dennis
Dennis

Posted on

I'm learning TDD with dotnet, follow along and let's learn together

A property of high-quality code is that it is easy to change

Since a few months, I've been watching videos on YouTube by Dave Farley from the Continuous Delivery channel. He has inspired me to start practicing test driven development. I want to write my experiences here on Dev.to so that I may look back on it and see how I grow. In my writings I will share successes, failures, uncertainties and learnings. I will mostly be following the practices as described by Dave Farley, to the extent that I am able.

Recap: What is TDD?

Test Driven Development means writing tests before writing code. Though trivial at first sight, this practice can significantly improve your ability to write high-quality code. As a developer, you put yourself into the position of the consumer of your code, forcing you to better think about the problem that you are trying to solve and giving you early feedback if your code is becoming too difficult to change.

For more accurate and elaborate explanations of Test Driven Development, you may check out this video by Dave Farley who has a lot of experience on the topic: https://www.youtube.com/watch?v=UvMpJSiI3WU

So why do I want to do TDD?

The short answer is: I want to get better at what I'm doing and this seems like a good direction for improvement.

I am still relatively new in the software industry. At the time of writing, I'm exactly 5 years employed as web developer. That being said, I now have a good amount of experience to understand my strengths and weaknesses. I've grown enough in my workplace to know that we can do better overall by adopting more professional practices in software development.

Here's where I'm coming from

My work is mostly about building websites on the Umbraco CMS. Though some of the projects that I work on have automated tests, most of them don't. I've tried to adopt automated testing in my URL Tracker package and I've tried out various approaches to automated testing in Umbraco websites.

This means that I know the tools for unit testing and I also know the tools for integration testing in dotnet, but I mostly lack the process and discipline to apply this effectively.

Let's get started

Now that the context is established, it's time to get started. I hope you feel inspired, perhaps learn something new together with me while I learn more about Test Driven Development. Along with this introduction, I will share another blog with one of my first experiences. I must admit, I've already been doing this for two weeks now, so I need to catch up a little bit. It would be awesome if you could go check it out! Thank you for reading and I'll see you in my next blog! 😊

Top comments (0)