ServerJS/Unit Testing
From MozillaWiki
< ServerJS
Unit testing
Automated tests are an important part of software development today. Providing a standard test library will help encourage more people to write more tests. Additionally, the API specification will likely be written in the form of tests, so this component will be needed by the ServerJS project itself.
Testing involves both an API for easily defining tests and running assertions, plus a tool (or tools) for locating and running the tests.
Prior Art
- JsUnit - browser, native, Ant, and Maven based test runners
- rhinounit - Ant based test runner
- JavaScript Assertion Unit -
- QUnit jQuery's unit testing framework, browser based
- DOH JavaScript unit testing framework (used by Dojo, but without Dojo dependencies), supports browsers and stand-alone JavaScript environments.
- JSSpec is a Javascript BDD(Behavior Driven Development) framework. http://code.google.com/p/jsspec/
- JSpec is a minimalistic JavaScript behavior driven development framework http://github.com/visionmedia/jspec/tree/master
- Better Javascript testing through ScrewUnit http://pivotallabs.com/users/nick/bl...ough-screwunit
- Mochitest is an automated testing framework built on top of the MochiKit JavaScript libraries https://developer.mozilla.org/en/Mochitest
- Yahoo! UI Library: YUI Test http://developer.yahoo.com/yui/yuitest/
- JSMock is a fully featured Mock Object library for JavaScript that provides the necessary tools to do effective interactive based testing. http://jsmock.sourceforge.net/
- JSLitmus is a lightweight tool for creating ad-hoc JavaScript benchmark tests. http://www.broofa.com/Tools/JSLitmus/
- Jack is a toolkit for mocking JavaScript objects and functions. http://boss.bekk.no/display/BOSS/Jack
- MockMe for JavaScript http://johanneslink.net/projects/mockme.html
- qMock is a standalone, lightweight mocking framework that facilitates integration testing for JavaScript programs. http://code.google.com/p/qmock/
- TDD JS with JsMock http://www.pathf.com/blogs/2006/11/tdd_and_javascr/
- Test Driven Javascript http://www.testdrivenjavascript.com/Practice/5.aspx
- jsUnity is a lightweight JavaScript testing framework that is context-agnostic http://jsunity.com/
- JsUnitTest is based off unittest.js from prototypejs, except this library has no dependencies http://jsunittest.com
- Inspec BDD style test framework http://github.com/aq1018/inspec
Proposals
Relevant Discussions
Show of Hands
- (A) making (message, guard) and (guard) the accepted argument forms.
- Daniel Friesen
- (B) making (guard, message) and (guard) the accepted argument forms.
- Ash Berlin
- Mark Porter
- Kris Kowal
- George Moschovitis
- Hannes Wallnöfer
- (X) make the assertion message mandatory.
- (Y) make the assertion message optional.
- Ash Berlin
- Kris Kowal
- Mark Porter
- George Moschovitis
- Hannes Wallnöfer