Skip to content

neu-se/stryker-js

 
 

Repository files navigation

Instructions

Upon first checkout, install StrykerJS dependencies using npm install.

Every time you make a change to StrykerJS, rebuild it using npm run build.

To apply the modified StrykerJS to a code base, install it inside a checkout of the code base:

npx install-local /path/to/stryker-js/packages/{core,util,api,instrumenter,*-runner}

Create a JSON file with the desired mutants, store its location in the environment variable MUTANTS_FILE, then run StrykerJS as usual:

npx stryker run

Mutation testing badge Build Status NPM Node version Slack Chat

Stryker

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.

Welcome to StrykerJS's monorepo. This is where all official stryker packages are maintained. If you're new to monorepos: don't be scared. You'll find the packages in the packages folder.

If you're interested in why we chose a monorepo, please read babeljs's design document about monorepos. We use it for the same reasons as they do.

Introduction

For an introduction to mutation testing and Stryker's 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.

About

Mutation testing for JavaScript and friends

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 84.2%
  • JavaScript 12.7%
  • HTML 1.9%
  • Gherkin 0.4%
  • Vue 0.3%
  • Svelte 0.2%
  • Other 0.3%