Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

freeCodeCamp

Quality Assurance

via freeCodeCamp

Overview

As your programs or web applications become more complex, you'll want to test them to make sure that new changes don't break their original functionality.

In the Quality Assurance Certification, you'll learn how to write tests with Chai to ensure your applications work the way you expect them to.

Then you'll build a chat application to learn advanced Node and Express concepts. You'll also use Pug as a template engine, Passport for authentication, and Socket.io for real-time communication between the server and connected clients.

Major Topics:
  • Quality Assurance and Testing with Chai
  • Advanced Node and Express
  • Quality Assurance Projects

Syllabus

  • Learn How JavaScript Assertions Work
  • Test if a Variable or Function is Defined
  • Use Assert.isOK and Assert.isNotOK
  • Test for Truthiness
  • Use the Double Equals to Assert Equality
  • Use the Triple Equals to Assert Strict Equality
  • Assert Deep Equality with .deepEqual and .notDeepEqual
  • Compare the Properties of Two Elements
  • Test if One Value is Below or At Least as Large as Another
  • Test if a Value Falls within a Specific Range
  • Test if a Value is an Array
  • Test if an Array Contains an Item
  • Test if a Value is a String
  • Test if a String Contains a Substring
  • Use Regular Expressions to Test a String
  • Test if an Object has a Property
  • Test if a Value is of a Specific Data Structure Type
  • Test if an Object is an Instance of a Constructor
  • Run Functional Tests on API Endpoints using Chai-HTTP
  • Run Functional Tests on API Endpoints using Chai-HTTP II
  • Run Functional Tests on an API Response using Chai-HTTP III - PUT method
  • Run Functional Tests on an API Response using Chai-HTTP IV - PUT method
  • Simulate Actions Using a Headless Browser
  • Run Functional Tests Using a Headless Browser
  • Run Functional Tests Using a Headless Browser II
  • Set up a Template Engine
  • Use a Template Engine's Powers
  • Set up Passport
  • Serialization of a User Object
  • Implement the Serialization of a Passport User
  • Authentication Strategies
  • How to Use Passport Strategies
  • Create New Middleware
  • How to Put a Profile Together
  • Logging a User Out
  • Registration of New Users
  • Hashing Your Passwords
  • Clean Up Your Project with Modules
  • Implementation of Social Authentication
  • Implementation of Social Authentication II
  • Implementation of Social Authentication III
  • Set up the Environment
  • Communicate by Emitting
  • Handle a Disconnect
  • Authentication with Socket.IO
  • Announce New Users
  • Send and Display Chat Messages
  • Metric-Imperial Converter
  • Issue Tracker
  • Personal Library
  • Sudoku Solver
  • American British Translator

Taught by

freeCodeCamp Team

Reviews

4.8 rating, based on 4 Class Central reviews

Start your review of Quality Assurance

  • This is a great next step once you have completed through APIs and Microservices. It covers adding security and authentication to your program, and adding tests, which are extremely useful especially once you are working on bigger projects. It is a great idea to at least be familiar with Passport, unit tests, and Helmet.js.
  • Yadav Chhotukumar Jago
    Learn How JavaScript Assertions Work
    Test if a Variable or Function is Defined
    Use Assert.isOK and Assert.isNotOK
    Test for Truthiness
    Use the Double Equals to Assert Equality
    Use the Triple Equals to Assert Strict Equality
    Assert Deep Equality with .deepEqual and .notDeepEqual
    Compare the Properties of Two Elements
    Test if One Value is Below or At Least as Large as Another
    Test if a Value Falls within a Specific Range
    Test if a Value is an Array
    Test if an Array Contains an Item
    Test if a Value is a String
    Test if a String Contains a Substring
    Use Regular Expressions to Test a String
    Test if an Object has a Property
  • Galadima Joseph
    It is a fantastic course that you need to learn to improve your skills. The course gave me an ample time to work and learn at the same.
  • Vaijanti Nety
    i would defiantly recommend this course to my colleague and my friends and family how would show the interest in technical stuff

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.