# Test Runners
- Jasmine is a Behavior Driven Development testing framework for JavaScript. It does not rely on browsers, DOM, or any JavaScript framework. Thus it's suited for websites, Node.js projects, or anywhere that JavaScript can run.
- Jest is used by Facebook to test all JavaScript code including React applications.
- Majestic - Zero config GUI for Jest
- Mastering Jest
- Lab is a simple test utility for node.
- Mocha is a feature-rich JavaScript test framework running on Node.js and the browser, making asynchronous testing simple and fun.
- Tape tap-producing test harness for node and browsers
- uvu - is an extremely fast and lightweight test runner for Node.js and the browser.
- Intern
- DalekJS Cross-browser testing
# E2E
- Cypress - Fast, easy and reliable testing for anything that runs in a browser.
- Nightwatch is an easy to use Node.js based End-to-End (E2E) testing solution for browser based apps and websites
- Protractor is an end-to-end test framework for AngularJS applications.
# Libraries
- Chai.js Assertion library supporting expect, should and assert styles.
- expect.js - Assertion library supporting expect syntax
- frisby.js - HTTP calls and assertions using Jest for running tests
- Polly.js - Record, replay, and stub HTTP interactions.
- Should.js - Assertion library supporting should syntax
- TAIKO - an open source node.js library for testing modern web applications
Jasmine uses a built-in version of the expect styles.
# Load Testing
# Http Calls
- httpbin - A simple HTTP Request & Response Service.
- superagent - Elegant & feature rich browser/node HTTP calls with a fluent API
- superfetch - A super powerful node.js HTTP client with promises support.
- supertest is a Super-agent driven library for testing node.js HTTP servers using a fluent API
- supertest-as-promised - Supercharge supertest with a promise interface
- Chakram is a REST API testing framework offering a BDD testing style and fully exploiting promises
# Mocks & Stubs
- JsonStub - Fake your backend
- Mockable
- Mock Server
- Mocktail
- nock
- SinonJS and sinon-chai
- Wiremock
# Browser Testing
- Sauce Labs - Cross Browser Testing, Mobile Web Testing & JS Unit Testing
- Browserling - Live interactive cross-browser testing
- Browserstack - Live, Web-Based Browser Testing
- Testing Bot - Automated and manual browser testing
# Misc
- Faker.js - generate massive amounts of realistic fake data in Node.js and the browser
- Random JSON Data Generator
- PhantomJS is a headless WebKit scriptable with a JavaScript API.
- SeleniumHQ is for automating web applications for testing purposes
- Casper.js
- Hulken is a stress testing tool for everything speaking HTTP
- gremlins.js is monkey testing for JS
- randexp.js - Create random strings that match a given regular expression.
# Stress Testing
- stresser - Stress tests HTTP(s) endpoints