Kenneth Truyers
user

Kenneth Truyers

.NET developer at Appyparking, Pluralsight Author and Microsoft MVP


Tagunit testing
Featured

.NET REST unit testing

Testing REST clients

Posted on .

With the proliferation of REST API’s, external ones and internal ones (think microservices), we very often find ourselves depending on these external services in our applications. Usually we have some designated class in front of the access to such a REST API…

Featured

.NET Acceptance Testing c# Continuous Delivery development unit testing

The test pyramid

Posted on .

The test pyramid is a concept that was developed by Mike Cohn. It states that you should have an appropriate amount of each type of test. In the pyramid he distinguishes different types of tests: Exploratory tests: Performed manually by a tester System tests:…

Featured

Acceptance Testing best practices Powershell unit testing

Running SpecFlow Acceptance Tests in parallel on BrowserStack

Posted on .

Automated acceptance tests play a vital role in continuous delivery. Contrary to unit tests though, they’re quite hard to get right. This is not only because end-to-end testing is harder than testing single units, but also because of the way they need to be e…

Featured

.NET Acceptance Testing best practices unit testing

Automated acceptance testing with Cucumber for .NET and JAVA

Posted on .

One of the biggest problems in software development is communication. Although we have a lot of technology at hand, the more complex a project is, the harder it is to communicate efficiently. In order to improve the interaction between clients, project manager…

Featured

.NET best practices development unit testing

Flexible and expressive unit tests with the builder pattern

Posted on .

Unit tests become more valuable if they are expressive and flexible. A good unit test should not only test your code, but also document it. Creating expressive and flexible unit tests is not always easy however. The reason of this is that there’s an inherit di…

Featured

AOP best practices dependency injection patterns unit testing

A brief comparison of fundamental AOP techniques

Posted on .

In my previous post “Why choose DI Interception over Aspect Oriented Programming?” I explained my preference for DI interception over AOP. I received a lot of comments on this (especially on reddit) which pointed out some errors. In this article I want to reit…

Featured

best practices c# dependency injection development unit testing

The N-layer myth and basic Dependency Injection

Posted on .

Dividing an application in N layers is considered a standard and a best practice. It is often thought that this automatically creates a decoupled application. However, just creating layers doesn’t make your code loosely coupled. A typical N-layer application L…

Featured

unit testing

Breaking dependencies to make your code testable

Posted on .

In my previous post I explained how you could use “Extract Interface” and “Subclass and override” as effective techniques for breaking dependencies and get existing code under test. In some situations there are other methods either more appropriate or easier t…

Featured

unit testing

How to unit test and refactor legacy code?

Posted on .

When you first start writing unit tests, you probably already have quite a large working codebase. Now, how can you start writing tests for this code? Usually this code isn’t written with testing in mind and it’s probably very hard to test. Your team probably…

Featured

unit testing

Key qualities of a good unit test

Posted on .

In order for our unit tests to become effective we need to lay out some ground rules. What is a good unit test and what can we do to make sure we create tests that actually help us in our development efforts? Because it’s not always easy or possible to create…

Featured

unit testing

Unit testing: How to start writing effective tests

Posted on .

Unit testing is widely accepted as a good development practice. Strangely enough it’s also** widely ignored** in a lot of companies. It seems that everyone agrees that it is a must and should be implemented in every development shop. In reality, however, you’l…