Fettle is an experimental mutation testing tool for C#.
⛔ THIS PROJECT IS NO LONGER BEING MAINTAINED ⛔
I recommend using Stryker for mutation testing C# code.
Fettle can mutate C# code that runs on the .NET Framework (Mono or .NET Core are not supported).
If your tests use NUnit 3, Fettle will use them by default (version 3.10 or higher recommended).
Or if you use another framework, or need to run them in a special way, then you can use a custom test runner command.
To start using Fettle, see the getting started guide.
To build from source, see the developer guide.
Fettle comes with some optimisations to make mutation testing faster:
- It will perform test impact analysis on your project to try and find the subset of tests to run for a given piece of source-code.
- It can be configured to only mutate your local changes rather than your entire code-base.
If you're having problems running Fettle see the troubleshooting guide.
If you're still having issues feel free to get in touch on the gitter page or create an issue.
There's also a list of supported mutations.
Fettle relies on some awesome .NET projects which include:
This is an experimental project run within comparethemarket / BGL Group. If you are stuck, or keen to help, then please get in touch on the gitter page or open an issue.
Note that we have a code of conduct.
Oli Wennell did the initial work and is the project's maintainer.
Here's a list of the lovely people that have helped the project by contributing.
This project is licensed under the MIT License - see the LICENSE file for details
Thanks to:
- The authors of the other mutation testing tools out there for inspiration.
- PurpleBooth for their README template.
- Contributor covenant for their code of conduct.