Test-Driven JavaScript Development

Learn JavaScript test-driven development using popular frameworks and tools
Preview in Mapt

Test-Driven JavaScript Development

Ravi Kumar Gupta, Hetal Prajapati, Harmeet Singh

5 customer reviews
Learn JavaScript test-driven development using popular frameworks and tools
Mapt Subscription
FREE
$29.99/m after trial
eBook
$10.00
RRP $31.99
Save 68%
Print + eBook
$39.99
RRP $39.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$10.00
$39.99
$29.99 p/m after trial
RRP $31.99
RRP $39.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


Test-Driven JavaScript Development Book Cover
Test-Driven JavaScript Development
$ 31.99
$ 10.00
Object-Oriented JavaScript - Third Edition Book Cover
Object-Oriented JavaScript - Third Edition
$ 35.99
$ 10.00
Buy 2 for $20.00
Save $47.98
Add to Cart

Book Details

ISBN 139781782174929
Paperback240 pages

Book Description

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.

Table of Contents

Chapter 1: Overview of TDD
Complexity of web pages
Understanding test-driven development
Agile and TDD
Benefits of TDD and common myths
Summary
Chapter 2: Testing Concepts
Unit testing
Benefits and pitfalls
Summary
Chapter 3: Testing Tools
JsUnit
QUnit
Karma with Jasmine
DalekJS
Summary
Chapter 4: Jasmine
Understanding behavior-driven development
Setting up Jasmine
describe and specs
Expectations
Matchers
Set up and tear down
Spies
Jasmine clock
Creating a custom matcher
Creating a custom equality tester
Nesting suites
Summary
Chapter 5: JsTestDriver
JsTestDriver
Setting up JsTestDriver with IDE
Code coverage
Summary
Chapter 6: Feature Detection
Understanding feature detection
has.js
Modernizr
Browser detection
Features testing with Modernizr
Modernizr methods
Undetectable features
Summary
Chapter 7: Observer Design Pattern
Overview
When to use it
Advantages
Disadvantages
Different implementations of the observer
Observer with topics
Observer pattern using jQuery.Callbacks
Implementing the observer pattern using TDD
Summary
Chapter 8: Testing with Server-Side JS
Setting up the environment
Server-side unit testing
Summary
Chapter 9: Best Practices
TDD best practices
Follow proper rules to define test cases
Applying proper processes
Follow right development practices
Choosing the right tool
Summary

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

Authors

Table of Contents

Chapter 1: Overview of TDD
Complexity of web pages
Understanding test-driven development
Agile and TDD
Benefits of TDD and common myths
Summary
Chapter 2: Testing Concepts
Unit testing
Benefits and pitfalls
Summary
Chapter 3: Testing Tools
JsUnit
QUnit
Karma with Jasmine
DalekJS
Summary
Chapter 4: Jasmine
Understanding behavior-driven development
Setting up Jasmine
describe and specs
Expectations
Matchers
Set up and tear down
Spies
Jasmine clock
Creating a custom matcher
Creating a custom equality tester
Nesting suites
Summary
Chapter 5: JsTestDriver
JsTestDriver
Setting up JsTestDriver with IDE
Code coverage
Summary
Chapter 6: Feature Detection
Understanding feature detection
has.js
Modernizr
Browser detection
Features testing with Modernizr
Modernizr methods
Undetectable features
Summary
Chapter 7: Observer Design Pattern
Overview
When to use it
Advantages
Disadvantages
Different implementations of the observer
Observer with topics
Observer pattern using jQuery.Callbacks
Implementing the observer pattern using TDD
Summary
Chapter 8: Testing with Server-Side JS
Setting up the environment
Server-side unit testing
Summary
Chapter 9: Best Practices
TDD best practices
Follow proper rules to define test cases
Applying proper processes
Follow right development practices
Choosing the right tool
Summary

Book Details

ISBN 139781782174929
Paperback240 pages
Read More
From 5 reviews

Read More Reviews

Recommended for You

Object-Oriented JavaScript - Third Edition Book Cover
Object-Oriented JavaScript - Third Edition
$ 35.99
$ 10.00
Jasmine JavaScript Testing - Second Edition Book Cover
Jasmine JavaScript Testing - Second Edition
$ 27.99
$ 10.00
Node.js Web Development - Third Edition Book Cover
Node.js Web Development - Third Edition
$ 35.99
$ 10.00
Learning JavaScript Data Structures and Algorithms - Second Edition Book Cover
Learning JavaScript Data Structures and Algorithms - Second Edition
$ 35.99
$ 10.00
Modular Programming with JavaScript Book Cover
Modular Programming with JavaScript
$ 35.99
$ 10.00
Angular Test-Driven Development - Second Edition Book Cover
Angular Test-Driven Development - Second Edition
$ 31.99
$ 10.00