Acceptance Testing in Node.js

This course will teach you about acceptance tests - tests which enter just beneath the UI and enable you to increase the quality of your code, improve your development process, and deliver customer value.
Course info
Rating
(15)
Level
Intermediate
Updated
Feb 15, 2018
Duration
3h 19m
Table of contents
Course Overview
What Is Acceptance Testing?
Mechanics of Acceptance Testing
Introduce and Set up Demo Application
Adding Acceptance Tests to Existing Code
SuperTest
Acceptance Test Driven Development
Description
Course info
Rating
(15)
Level
Intermediate
Updated
Feb 15, 2018
Duration
3h 19m
Description

UI tests are comprehensive, but they are also brittle. Unit tests are reliable, but they don't test interactions between units. Acceptance tests help fill the need for testing user scenarios without the brittleness of UI tests. In this course, Acceptance Testing in Node.js, you will learn the what, why, and how of acceptance tests. First, you will learn what acceptance tests are and why you should write them. Next, you will explore how to write acceptance tests for existing code, including using SuperTest. Finally, you will see how to use acceptance tests to drive your code with acceptance test driven development. When you're finished with this course, you will have the skills and knowledge of acceptance testing needed to increase the quality of your code, improve your development process, and deliver customer value.

About the author
About the author

As a software developer, Amy has developed a love for learning. Currently an Engineering Manager at Pluralsight, her passions include TDD, pair programming, and lean process.

More from the author
Section Introduction Transcripts
Section Introduction Transcripts

Course Overview
Hey there! This is Amy Dredge, and welcome to my Pluralsight course, Acceptance Testing in Node. js. In my career as a software developer, I have come to love acceptance testing and the benefits it provides. In this course, I hope to demonstrate the value I have found, and provide compelling reasons for you to consider writing acceptance tests for your own applications. The first two modules of this course are designed to be valuable regardless of your technology stack. Even if you have no interest in Node. js, the first two modules will still help you gain a solid understanding of acceptance testing. You'll learn about the pros and cons of acceptance tests, when and why you should write them, and the basic mechanics of writing an acceptance test. After we've gone over the foundational concepts of acceptance testing, we'll dive into code with a sample application. Since you won't always get to start from scratch and build brand new applications, we'll add an acceptance test to existing code. Next, we'll go over the SuperTest library targeted toward testing HTTP APIs, where you'll learn the basics of SuperTest. Further, you'll be able to understand what SuperTest provides that hand-rolled acceptance tests don't, and vice versa. Lastly, you'll learn how to drive a new feature with acceptance test-driven development, my favorite way to write acceptance tests. The only prerequisites for the hands-on coding part of the course are that you have some familiarity with JavaScript and testing, but you certainly don't need to be an expert. I can't wait to show you how powerful and fun acceptance testing can be. Thank you for joining me; let's get started.