Browser Acceptance Testing
- tobi allows you to test your web application as if it were a browser.
- soda (and soda-runner) is a light-weight Selenium RC client for Node.JS with additional Sauce Labs integration for acceptance testing in the cloud.
- js-test-driver is a test runner which easily integrates with continuous builds systems and allows running tests on multiple browsers quickly to ease TDD style development.
Generic TDD and BDD
- Vows gives you synchronous behaviour driven development for Node.JS. CLI
- should.js is an expressive, readable, test framework agnostic, assertion library for Node.JS.
- Nodeunit provides easy async unit testing for Node.JS and the browser. CLI
- node-qunit is a port of QUnit unit testing framework to Node.JS. CLI
- kyuri is a Node.JS Cucumber implementation with a few extra asynchronous keywords. It supports 160+ languages and exports to VowsJS stubs.
- node-stories gives you lightweight Given/When/Then/And/But blocks with async-support for Node.JS.
- Testosterone allows you to follow BDD or TDD on any of your projects using the same testing library. CLI
- whiskey is a powerful test runner for Node.JS applications. CLI
- Twerp is a really simple, class based testing framework for Node.JS and CoffeeScript. CLI
- Sinon.JS gives you standalone and test framework agnostic test spies, stubs and mocks.
- Gently helps with stubbing and behavior verification. It allows you to test the most remote and nested corners of your code while keeping being fully unobtrusive.
- Nock is an HTTP mocking and expectations library for Node.JS.
- Horaa mocks internal Node.JS modules.
- Mockery lets you work more easily with your framework of choice (or no framework) to get your mocks hooked in to all the right places in the code you need to test. Not a mocking framework.
- Node Replay records and replays HTTP responses like a boss!!!11
- httpmock is a library for stubbing out web services without changing the system under test. It’s designed for functional testing.
- tbd allows you to generate some test data quickly and painlessly. Works with Node.JS and browser.
- TestSwarm (and a plugin for Jenkins jenkins-testswarm) gives you distributed continuous integration (used by jQuery at swarm.jquery.org).