a testing structure (Mocha, Jasmine, Jest, Cucumber) • Provide assertions functions (Chai, Jasmine, Jest, Unexpected) • Generate, display, and watch test results (Mocha, Jasmine, Jest, Karma) • Generate and compare snapshots of component and data structures to make sure changes from previous runs are intended (Jest, Ava) • Provide mocks, spies, and stubs (Sinon, Jasmine, enzyme, Jest, testdouble) • Generate code coverage reports (Istanbul, Jest, Blanket) • Provide a browser or browser-like environment with a control on their scenarios execution (Cypress, Protractor, Nightwatch, Phantom, Casper)
in the program been called? • Statement coverage – Has each statement in the program been executed? • Branch coverage – Has each branch (also called DD-path) of each control structure (such as in if and case statements) been executed? • Line coverage - Has each line been called?