@stryker-mutator/core
    TypeScript icon, indicating that this package has built-in type declarations

    5.5.1 • Public • Published

    Mutation testing badge Build Status NPM Node version Slack Chat

    StrykerJS

    StrykerJS

    Professor X: For someone who hates mutants... you certainly keep some strange company. William Stryker: Oh, they serve their purpose... as long as they can be controlled.

    Introduction

    For an introduction to mutation testing and StrykerJS features, see stryker-mutator.io.

    Getting started

    Please follow the quickstart on the website.

    For small js projects, you can try the following command:

    npm install --save-dev @stryker-mutator/core
    # Only for small projects:
    npx stryker run
    

    It will run stryker with default values:

    • Uses npm test as your test command
    • Searches for files to mutate in the lib and src directories

    Usage

    $ npx stryker <command> [options] [configFile]

    See usage on stryker-mutator.io

    Supported mutators

    See our website for the list of currently supported mutators.

    Configuration

    See configuration on stryker-mutator.io.

    Programmatic use

    Stryker can also be used programmatically from nodejs. It exports 2 classes for you to use: Stryker and StrykerCli.

    import { Stryker, StrykerCli } from '@stryker-mutator/core';

    Both classes can be used to run Stryker. The main difference is that Stryker is a slightly more low-level approach, while StrykerCli is the straight up CLI api.

    In this example you can see how to use both.

    async function main() {
      // Runs Stryker as if it was called directly from the cli. Not even returns a promise, it assumes to be allowed to call `process.exit`.
      new StrykerCli(process.argv /* RAW argv array */ ).run(); 
    
      // Runs Stryker, will not assume to be allowed to exit the process.
      const stryker = new Stryker({ concurrency: 4 } /* Partial Stryker options object */ );
      const mutantResults = await stryker.runMutationTest();
      // mutantResults or rejected with an error.
    }

    Stryker is written in TypeScript, so it is recommended to use Stryker as well to get the best developer experience.

    Install

    npm i @stryker-mutator/core

    DownloadsWeekly Downloads

    47,769

    Version

    5.5.1

    License

    Apache-2.0

    Unpacked Size

    971 kB

    Total Files

    586

    Last publish

    Collaborators

    • nicojs
    • archcry
    • simondel
    • strykermutator-npa