Comparing Assertion Libraries for .NET Framework
Working with a legacy codebase using NUnit and .NET Framework, I've found that there is a mix of NUnit assertions and assertions using the Should library. This library is rather old and, frankly, limited compared to Shouldly and FluentAssertions. These newer two frameworks are significantly more expressive, with APIs that cover myriad situations elegantly. Questions in front of me:
- Are any of these libraries really worthwhile compared to simply using NUnit's built-in assertions - either traditional or Assert.That style?
- If using any independent framework, which is the best choice for this code base?
- If selecting Shouldly or FluentAssertions, ought we to upgrade the old asserts?
My conclusion: favor Shouldly. Upgrade old asserts opportunistically for consistency, but no need to go out of the way.

