Writing C# code is great , this book describe how you can test drive your code in C# environment!
This book include good and working examples of unit tests for C#.
In order to run the tests, you need test nunit engine, nunit test adapter (install via nuget) and setup to the latest .Net framework and update Nsubstitute vi nugget package manager.
Here is the example of all those tests:
Author provides good explanations what is happening during running of the test runner
Code for exception testing is outdated use following nunit tutorial about how to test exception with nunit.
This book goes deep and it feels sometimes a little bit convoluted but its ok, I was able to follow the thinking pattern.
The code works this the most amazing thing, even if this book wasn’t updated with newest nunit, the unit tests and the code works! This really powerful ! In 2021 cool!
Some interesting ideas about usage of mocks and stubs.
Speaks about dependency injection.
Introduce to NSubstitute mocking framework and introducing to other mocking frameworks and author of this book compare usage of mocks and stubs, and tells what are differences and which of mocks are freely available.
This book additionally discuss how TDD can be integrated into companies and what to expect from such endeavor, what the challenge and how to deal with them.
Wow it mentions Java in C# book, this so strange!
Additionally this book describes some software design architecture decisions which would happen , when you have test driven development.
Overall this book is very good, i can recommend it to any C# programmer , who wanted to get into TDD with C#.
Is there any missing parts?
Well this book does not cover how to test server related stuff in .Net / C# environment, it does not covering the testing of WPF or any C# related UI. I guess its pretty challenging and depends on how good your software architecture really is.
Whom i can recommend this book? As i said already , this book is a must read for any C# developer and maybe even architects would be happy after reading this book. Managers, well if they have technical background, they would understand how TDD really works, you will find actual examples and comparison in productivity with teams doing TDD and with teams which not doing TDD.