Mutation testing for Node.js and JavaScript
npm install mutode  

Mutation testing for Node.js and JavaScript.
Mutode generates mutants (small changes of code) and runs your tests. If the tests fail, it means the mutant was detected and killed; if your tests pass, it means the mutant survived and your tests can be improved.
Read the thesis proposal here
> "It's like a test for your tests!" - @mappum
> "Higher order testing: automated testing for your unit tests" - @albertomiranda
Requires Node 8+
Globally:
``sh`
npm i -g mutode
Locally as a dev dependency:
`sh`
npm i -D mutode
Globally:
`sh`
mutode [options] [paths]
Locally with npx:
`sh`
npx mutode [options] [paths]
Locally with a package.json script:
``
{
...
"scripts": {
"test: "my test command",
"mutode": "mutode [options] [paths]"
}
...
}
Options:
`
Usage: mutode [options] [paths]
Options:
--concurrency, -c Concurrency of mutant runners [number] [default: 4]
--mutators, -m Specific mutators to load (space separated)
[array] [choices: "booleanLiterals", "conditionalsBoundary", "increments",
"invertNegatives", "math", "negateConditionals", "numericLiterals",
"removeArrayElements", "removeConditionals", "removeFuncCallArgs",
"removeFuncParams", "removeFunctions", "removeLines", "removeObjProps",
"removeSwitchCases", "stringLiterals"]
-h, --help Show help [boolean]
-v, --version Show version number [boolean]
``
- Current supported mutation operators are available here
- General documentation is available here
- Demo