Zombie.js - Fast, full-stack headless testing. No actual browser needed. Runs on top of node.
Soda - Selenium Node adapter.
Tutti - Test Javascript on different browsers simultaneously.
testling - Automated cross-browser solution
Mocha - Supports both synchronous and asynchronous testing. Node and browser frontends.
QUnit - Designed particularly for jQuery but should work with any JS code
jsunit - Port of JUnit to JavaScript. No longer maintained. Succeeded by Jasmine.
Hiro - Runs in iframe sandbox avoiding global state leaks and conflicts.
See also Wikipedia.
Sinon.JS - Spies, stubs and mocks. No dependencies. Works with any JavaScript framework.
qc.js - Implementation of QuickCheck for JavaScript. See also http://willowbend.cx/2009/12/05/qc-js-quickcheck-javascript/ .
Crawljax - Ajax testing and automation.
JUTE - Wraps YUI, provides code coverage. Includes both command line and web based interfaces. Provides Selenium, Capture, and V8 testing backends.