The Beauty of Software Testing

Composition for better testability?

How many times did you want to test a class which inherits another class? Probably quite often. Today I want to look at one best practice, called "favor composition over inheritance" which untangles big hierarchical structures.
Author Image

How to isolate the system under test in C#?

How do you verify that you only test what you want to test? It really depends on good abstraction. But there is much more to it!
Author Image

How to decouple your business logic from UI components?

The UI is a volatile and hard-to-test component. You don't want to have direct references of UI framework elements inside your automated code tests. So how can you decouple UI components from your business logic? In this article, we look at two patterns for extracting business logic from UI logic to increase testability in your application.
Author Image

Making untestable code testable again!

Untestable code. What it is, why we need it to minimize it and how we can achieve it?
Author Image

TDD in a nutshell

Every developer heard the term TTD at least once in their career. It's more than just writing your tests before your production code. It's a skill which also needs a lot of discipline.
Author Image

Dependency Injection is more than just avoiding "new"

Why dependency injection is more than just initializing your instances with new!
Author Image