Jest 
Painless JavaScript Unit Testing
Familiar Approach: Built on top of the Jasmine test framework, using familiar expect(value).toBe(other) assertions
Mock by Default: Automatically mocks CommonJS modules returned by require(), making most existing code testable
Short Feedback Loop: DOM APIs are mocked and tests run in parallel via a small node.js command line utility
Getting Started
Check out the Getting Started tutorial. It's pretty simple!
API
<generated_api_start />
The jest
object
Mock functions
Config options
Globally injected variables
afterEach(fn)
beforeEach(fn)
describe(name, fn)
it(name, fn)
it.only(name, fn)
executes only this test. Useful when investigating a failurepit(name, fn)
helper for promisesrequire(module)
require.requireActual(module)
xdescribe(name, fn)
xit(name, fn)
expect(value)
.not
inverse the next comparison.toThrow(?message)
.toBe(value)
comparison using===
.toEqual(value)
deep comparison. Usejasmine.any(type)
to be softer.toBeFalsy()
.toBeTruthy()
.toBeNull()
.toBeUndefined()
.toBeDefined()
.toMatch(regexp)
.toContain(string)
.toBeCloseTo(number, delta)
.toBeGreaterThan(number)
.toBeLessThan(number)
.toBeCalled()
.toBeCalledWith(arg, um, ents)
.lastCalledWith(arg, um, ents)
<generated_api_end />