Start by learning when and why to do manual testing vs. automated verification. Focus tests on the important things, like the pre-conditions, the invariants, complex logic, and gnarly edge cases. Then begin to design asynchronous functions using automated tests. Carefully decouple and mock out intricate dependencies such as the DOM, geolocation API, file and database access, and Ajax calls to remote servers.
Step by step, test code that uses Node.js, Express, MongoDB, jQuery, and AngularJS. Know when and how to use tools such as Chai, Istanbul, Karma, Mocha, Protractor, and Sinon. Create tests with minimum effort and run them fast without having to spin up web servers or manually edit HTML pages to run in browsers. Then explore end-to-end testing to ensure all parts are wired and working well together.
Don't just imagine creating testable code, write it.
What You Need:
A computer with a text editor and your favorite browser. The book provides instructions to install the necessary automated testing-related tools.
Table of Contents
Chapter 1. Automation Shall Set You Free
Part I Creating Automated Tests
Chapter 2. Test-Drive Your Design
Chapter 3. Test Asynchrony
Chapter 4. Tactfully Tackle Dependencies
Part II Real-World Automated Testing
Chapter 5. Test-Drive Node.js Apps
Chapter 6. Test-Drive Express Apps
Chapter 7. Working with the DOM and jQuery
Chapter 8. Using AngularJS
Chapter 9. Test-Drive Angular 2
Chapter 10. Integrate and Test End-to-End
Chapter 11. Test-Drive Your Apps