Testing Framework / Test runner
- Minimal and fast
- Simple test syntax
- Runs tests concurrently
- Enforces writing atomic tests
- No implicit globals
- Includes TypeScript & Flow type definitions
- Magic assert
- Isolated environment for each test file
- Write your tests in ES2017
- Promise support
- Generator function support
- Async function support
- Observable support
- Enhanced assertion messages
- TAP reporter
- Automatic migration from other test runners
- Minimal and fast
- 🏃🏽 Instant Feedback: Failed tests run first. Fast interactive mode can switch between running all tests or only test files related to changed files.
- 📸 Snapshot Testing: Jest can capture snapshots of React trees or other serializable values to simplify UI testing.
Karma is not a testing framework, nor an assertion library. Karma just launches an HTTP server, and generates the test runner HTML file you probably already know from your favourite testing framework.
should is an expressive, readable, framework-agnostic assertion library. The main goals of this library are to be expressive and to be helpful. It keeps your test code clean, and your error messages helpful.
var should = require('should'); (5).should.be.exactly(5).and.be.a.Number();
Minimalistic BDD assertion toolkit based on should.js
var expect = require('expect.js'); expect(1).to.be(1)
Works with any unit testing framework.
- Module loader hooks to instrument code on the fly
- Command line tools to run node unit tests “with coverage turned on” and no cooperation whatsoever from the test runner
- Multiple report formats: HTML, LCOV, Cobertura and more.
- Ability to use as middleware when serving JS files that need to be tested on the browser.
- Can be used on the command line as well as a library
- Based on the awesome esprima parser and the equally awesome escodegen code generator
- Well-tested on node (prev, current and next versions) and the browser (instrumentation library only)