Learn JavaScript test-driven development using popular frameworks and tools
About This Book
* Learn the life cycle of TDD and its importance in real-world application * Gain knowledge about popular tools and analyze features, syntax, and how they help in JavaScript testing * Implement test-driven programming exercises using the practical code examples
Who This Book Is For
If you have an intermediate knowledge of HTML, CSS, and JavaScript and want to learn how and why the test-driven development approach is better for your assignments, then this book is for you.
What You Will Learn
* Basic TDD fundamentals, life cycle, and benefits * Become acquainted with the concepts and elements of unit testing and writing basic unit tests for JavaScript * Understand the way JsUnit, Qunit, Karma and DalekJs work * Use the Jasmine framework * Interpret feature detection and devise tests specific to cross-browser compatibility * Integrate jsTestDriver with Eclipse and run tests with jsTestDriver * Explore re-factoring, adding and notifying observers * Understand test-driven development in case of server-side JS
In Detail
Initially, all processing used to happen on the server-side and simple output was the response to web browsers. Nowadays, there are so many JavaScript frameworks and libraries created that help readers to create charts, animations, simulations, and so on. By the time a project finishes or reaches a stable state, so much JavaScript code has already been written that changing and maintaining it further is tedious. Here comes the importance of automated testing and more specifically, developing all that code in a test-driven environment. Test-driven development is a methodology that makes testing the central part of the design process - before writing code developers decide upon the conditions that code must meet to pass a test. The end goal is to help the readers understand the importance and process of using TDD as a part of development. This book starts with the details about test-driven development, its importance, need, and benefits. Later the book introduces popular tools and frameworks like YUI, Karma, QUnit, DalekJS, JsUnit and goes on to utilize Jasmine, Mocha, Karma for advanced concepts like feature detection, server-side testing, and patterns. We are going to understand, write, and run tests, and further debug our programs. The book concludes with best practices in JavaScript testing. By the end of the book, the readers will know why they should test, how to do it most efficiently, and will have a number of versatile tests (and methods for devising new tests) to get to work immediately.
Style and approach
Easy-to-follow guide with suitable examples for developing JavaScript code in the test-Driven environment, with popular tools and frameworks. User experience and statements are also included to help readers make a better choice of tool for real-world projects.