* [JsTestDriver](http://code.google.com/p/js-test-driver/)
* [Zombie.js](http://zombie.labnotes.org/) - Fast, full-stack headless testing. No actual browser needed. Runs on top of node.
* [Soda](http://sodajs.com/) - Selenium Node adapter.
* [Tutti](http://tuttijs.com/) - Test Javascript on different browsers simultaneously.
* [jsAssertUnit](http://jsassertunit.sourceforge.net/)
* [FuncUnit](http://funcunit.com/)
* [Watir](http://watir.com/)
* [Selenium](http://seleniumhq.org/)
* [google-js-test](http://code.google.com/p/google-js-test/)
* [testling](http://catonmat.net/blog/announcing-testling/) - Automated cross-browser solution
* [BITE](http://code.google.com/p/bite-project/)
* [Mocha](http://visionmedia.github.com/mocha/) - Supports both synchronous and asynchronous testing. Node and browser frontends.
* [Buster](http://busterjs.org/)
* [Tree](https://github.com/Wizek/Tree)
* [Bunyip](http://ryanseddon.github.com/bunyip/)

## Unit Testing

* [QUnit](http://docs.jquery.com/Qunit) - Designed particularly for jQuery but should work with any JS code
* [YUI Test](http://developer.yahoo.com/yui/yuitest/)
* [jsunit](http://www.jsunit.net/) - Port of [JUnit](http://www.junit.org/) to JavaScript. No longer maintained. Succeeded by Jasmine.
* [wru](https://github.com/WebReflection/wru)
* [bunit.js](https://github.com/bebraw/bunit.js)
* [FireUnit](http://fireunit.org/)
* [jsUnity](http://jsunity.com)
* [JasUnit](http://code.google.com/p/jasproject/wiki/JasUnit)
* [RhinoUnit](http://code.google.com/p/rhinounit/)
* [JSUnitTest](https://github.com/drnic/jsunittest/)
* [Hiro](http://hirojs.com/) - Runs in iframe sandbox avoiding global state leaks and conflicts.
* [JSEvidence](https://github.com/tobie/Evidence/)
* [J3Unit](http://j3unit.sourceforge.net/)
* [JSNUnit](http://www.valleyhighlands.com/testingframeworks/JSNUnit/)
* [munit.js](https://github.com/sole/munit.js)

See also [Wikipedia](http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#JavaScript).

## Test Runners

* [Chutzpah](http://chutzpah.codeplex.com/)

## Doctesting

* [doctestjs](https://github.com/ianb/doctestjs)

## BDD

* [Jasmine](http://pivotal.github.com/jasmine/) - BDD tool
* [JSpec](http://jspec.info) - Javascript BDD testing framework
* [Pavlov](https://github.com/mmonteleone/pavlov)
* [JSSpec](http://code.google.com/p/jsspec/)
* [Screw.Unit](https://github.com/nkallen/screw-unit)

## Mocking

* [Sinon.JS](http://sinonjs.org/) - Spies, stubs and mocks. No dependencies. Works with any JavaScript framework.
* [JSMock](http://jsmock.sourceforge.net/)
* [Mock](https://gist.github.com/837988)
* [jsmockito](http://jsmockito.org/)
* [MockMe](http://johanneslink.net/projects/mockme.html)
* [QMock](https://github.com/andybeeching/qmock)
* [JSHamcrest](http://jshamcrest.destaquenet.com/)

## Fuzzing

* [JSCheck](https://github.com/douglascrockford/JSCheck)
* [qc.js](https://bitbucket.org/darrint/qc.js/) - Implementation of QuickCheck for JavaScript. See also http://willowbend.cx/2009/12/05/qc-js-quickcheck-javascript/ .
* [suite.js](https://github.com/bebraw/suite.js)

## Ajax

* [Crawljax](http://crawljax.com/) - Ajax testing and automation.

## Coverage

* [JesCov](http://jescov.olabini.com/)
* [JSCoverage](http://siliconforks.com/jscoverage/)
* [ScriptCover](http://googletesting.blogspot.com/2011/10/scriptcover-makes-javascript-coverage.html)
* [JUTE](https://github.com/zzo/JUTE) - Wraps YUI, provides code coverage. Includes both command line and web based interfaces. Provides Selenium, Capture, and V8 testing backends.
* [JCov](https://github.com/yp-engineering/jcov)

## Asserts

* [Chai](http://chaijs.com/)
* [jsassert](https://github.com/bebraw/jsassert) - Chaining assert.
* [should](https://github.com/visionmedia/should.js) - BDD style assertions for node.js -- test framework agnostic

## Type Annotations

* [TypedJS](http://typedjs.com/)

## Continuous Integration

* [Travis CI](http://travis-ci.org/)

## Books

* [Test-Driven JavaScript Development](http://tddjs.com/)

## References

* [AMD Testing](https://github.com/geddesign/amd-testing)
* [Best Tools for Professional JavaScript Development](http://www.misfitgeek.com/2011/09/best-tools-for-professional-javascript-development/)