Jasmine Background & History
None of the existing frameworks quite worked the way we wanted. Many only work from within a browser. Most don't support testing asynchronous code like event callbacks. Some have syntax that's hard for JS developers or IDEs to understand.
So we decided to start from scratch.
- should not be tied to any browser, framework, platform, or host language.
- should have idiomatic and unsurprising syntax.
- shouldn't intrude in your application's territory (e.g. by cluttering the global namespace).
- should play well with IDEs (e.g. test code should pass static analysis).
Some of our goals while writing Jasmine:
- it should encourage good testing practices.
- it should integrate easily with continuous build systems.
- it should be simple to get started with.
The result is Jasmine, and we love test-driving our code with it. Enjoy.