Mutation testing
See original GitHub issueI’ve been playing around with mutation testing of Fluent Assertions using Stryker.NET. From their docs
What is mutation testing? Bugs, or mutants, are automatically inserted into your production code. Your tests are ran for each mutant. If your tests fail then the mutant is killed. If your tests passed, the mutant survived. The higher the percentage of mutants killed, the more effective your tests are.
It gives a nice html report of all found mutations making it easy to see what mutations survived our test suite. mutation-report.zip
I’ve used this to identify and add some missing unit tests.
I didn’t find any bugs in the library, but found some missing extension methods for DateTimeOffset
.
If anyone wants to chime on improving the test suite, this is a great tool.
Issue Analytics
- State:
- Created 4 years ago
- Reactions:4
- Comments:10 (10 by maintainers)
Top GitHub Comments
After a fix in Stryker.NET, so VSTest does not time-out, I finally could do a full run (~1h 20m)
mutation-report.zip
Total score: 85.43%
Total score: 85.89%
mutation-report.zip