Skip to main content

Stryker 0.6.4 released

ยท 3 min read
Nico Jansen
Nico Jansen
Stryker Team

This release of Stryker brings a number of new features and improvements. Including a new quickstart and a number of reporter improvements.

For the entire changelog per package:

New quickstartโ€‹

A new version of Stryker has been released that comes with a new way to initialize your project: an interactive questionnaire.

Previously, when you wanted to start using Stryker in your project, you probably used the quickstart on the website. Instead of evolving the quickstart on the website, we've chosen to build it right into Stryker. Try it out: stryker init.

Note: This is using the new stryker-cli. More on that in a separate blog article.

This new 'init' command has some advantages:

  • The test runners, test frameworks and reporters are dynamically queried on npm.
  • You can only select test frameworks that are actually supported by your test runner.
  • The required plugins are automatically installed.
  • Your Stryker configuration gets automatically generated.

A note for plugin creators: stryker init will automatically find your plugin as long as you add the correct keywords to your package.json file. More on that in a separate article or take a look at the PR.

Please take a look at PR #269 for more details

New clear-text reporter summaryโ€‹

The summary at the end of the clear-text reporter got a new look:

-----------|---------|----------|-----------|------------|----------|---------|
File | % score | # killed | # timeout | # survived | # no cov | # error |
-----------|---------|----------|-----------|------------|----------|---------|
All files | 69.57 | 16 | 0 | 3 | 4 | 0 |
Add.js | 82.35 | 14 | 0 | 1 | 2 | 0 |
Circle.js | 33.33 | 2 | 0 | 2 | 2 | 0 |
-----------|---------|----------|-----------|------------|----------|---------|

This works with a new reporter callback: onScoreCalculated, which provides a tree of score results per directory/file. This should be used as a single source of truth for all reporters. We're planning to migrate the stryker-html-reporter to this new way of working.

Please take a look at PR #309 for more details

Stryker mocha frameworkโ€‹

Previously, the stryker-mocha-framework was included in the stryker-mocha-runner package. We've noticed that this was quite confusing. That's why it's now migrated in it's own package.

BREAKING CHANGE: If you are using testRunner: 'mocha', testFramework: 'mocha' right now, please also install stryker-mocha-framework when upgrading from [email protected] to [email protected].

The stryker-mocha-framework currently only supports test runner 'mocha'. You'll get a warning when you configure an other runner. As configuring a test framework is always optional, you'll still be able to run your mocha tests in karma.

Please take a look at PR #308 for more details

New mutatorโ€‹

Please welcome our latest mutator: boolean substitution. It mutates your code in 3 ways:

true -> false
false -> true
!a -> a

Please take a look at PR #294 for more details