Skip to content

Mutation testing #1068

@jnyrup

Description

@jnyrup

I'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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions