🤖 Cyber Week 🤖

Grab it with 20%-off discount!

  • 00 Days
  • 00 Hours
  • 00 Minutes
  • 00 Seconds

Write Tests Consciously

At the end of the course, you will be able to write and debug tests with a full and in-depth understanding of what you are doing and how things are working.

  • Explore > 53 engaging videos (≈ 7 hours in total), all focused on Angular testing.

  • The course is expertly crafted by a Google Developer Expert in Angular and a Microsoft MVP in Developer Technologies

  • Designed for newbies in Angular Testing

  • Covers testing of standalone Angular API.

  • Lifetime access to all videos in the course & all course updates

  • Best practices that make your tests stable, clearer and more reusable.

  • Full access to the source code of the course

  • Homeworks. Apply your new skills to specially designed use cases for practical learning

  • Certificate about course completion

  • Professional English Subtitles (New 🔥)

For Whom Is This Course

This is a perfect choice for you if...

  • 🤔

    You recognize that unit testing makes your code more stable and reusable. However, you're unsure how to get started, and the official documentation feels overwhelmingly confusing.

  • 😕

    You already write some unit tests, but you often feel uncertain about what you are doing. Sometimes, it feels like you are just hacking things to make tests somehow finally work.

  • 😫

    Your tests are extremely fragile and unreliable, constantly failing even when the code logic remains unchanged. This frustrates you, and you’re eager to find a solution.

Explore the Course Content

Videos are structured into separate and independent modules for your convenience

  • 1

    Welcome to the course!

    • A message from the instructor

    • Getting Access to Project Source Code

  • 2

    Software Testing Basics

  • 3

    Angular Topics That Help With Testing

  • 4

    Angular Testing Basics

    • Dev Environment Setup & Projects Overview

    • Testing Simple Util Functions

      FREE PREVIEW
    • HOMEWORK 1: Testing Util Functions

    • Testing a Simple Angular Service

      FREE PREVIEW
    • Testing Service with Dependencies (Injection Token)

    • Testing Services with inject() function (using runInInjectionContext)

    • Testing Services with inject() (using TestBed.inject)

    • Overview of the TestBed Tool

    • Setting Up Test Case for Components

    • Component Fixture Overview

    • Change Detection in Testing Component

    • Querying Elements in Tests (Native Element vs Debug Element)

    • What to Test in Angular Components?

    • Testing of Component Inputs

    • TIP: How to make your tests less fragile Pt.1

    • TIP: How to make your tests less fragile Pt.2

    • Testing Components with OnPush Change Detection Strategy

    • Testing Component with Host Directives

    • How to test Component Events and Event Handlers

    • Introducing the testing approach using Test Host Component

    • Testing Content Projection in Components

    • Improving test setup using setup function

    • How to setup & test Standalone Components

    • Testing Component Outputs without Test Host

    • How To Test Component Outputs using TestHost strategy

    • HOMEWORK 2: Component Testing

    • How to Test Attribute Directives

    • HOMEWORK 3: Testing Attribute Directive

    • How to test Angular Pipes

    • How to test Pipes with Dependencies

    • HOMEWORK 4: Testing an Angular Pipe with Dependency

    • Components with Dependencies: Deep Rendering Strategy

    • Components with Dependencies: Shallow Rendering Strategy (NO_ERROR_SCHEMA)

    • Components with Dependencies: Shallow Rendering Strategy (Stubs)

    • Pitfalls Using Stubs with @ViewChild(ren) Decorator

    • Deep Rendering vs NO_ERRORS_SCHEMA vs Stubs

    • How To Test Components with NgFor (+stubs);

    • Components with Dependencies (standalone): Deep Rendering Strategy

    • Components with Dependencies(standalone): Shallow Rendering Strategy (Stubs)

    • Structural Directive Testing | Directive overview

    • Structural Directive Testing | Testing Plan

    • Structural Directive Testing | Testing Embeded View Rendering

    • Structural Directive Testing | Testing Async Code

    • Structural Directive Testing- Testing the Countdown Clock

    • Missed Tip About Async Code Testing

  • 5

    Testing of Complex Directive with Async Code & Dependencies

    • Copy to Clipboard - Directive Functionality Overview

      FREE PREVIEW
    • Creating the Testing Plan

    • Setting up the TestBed for the directive tests

    • Testing if Directive Observable emits Proper values Pt.1

    • Testing if Directive Observable emits Proper values Pt.2

    • Tests Refactoring and Enhancement

    • Testing if value from [text] input is copied to the Clipboard

    • Testing if element innerText is copied to the Clipboard

    • Testing if text from HTML input is copied to the Clipboard

    • Another Small Improvement For The Tests

  • 6

    Testing complex Entities (Smart Components, Services with HttpClients, etc)

    • Project setup for this Section

      FREE PREVIEW
    • Service with HttpClient - Test Setup

    • Service with HttpClient - Creating a Test Plan

    • Service with HttpClient - Testing the "loading" state

    • Service with HttpClient - Testing the successful HTTP call completion

    • Service with HttpClient - Testing the failed HTTP call completion Pt.12

    • Service with HttpClient - Testing the failed HTTP call completion Pt.2

    • Smart Component - Creating Testing Plan

    • Smart Component - TestBed Setup

    • Smart Component - Testing the Component "loading" state

    • Smart Component - Testing the Component "error" state

    • Smart Component - Testing If Item Cards are successfully rendered

    • Smart Component - Testing If Item added to the Cart on Click

    • Smart Component - Testing If the Item Link Leads To Proper Location

Meet Your Instructor

Google Developer Expert in Angular | Microsoft MVP | Author of Decoded Frontend

Dmytro Mezhenskyi

My name is Dmytro Mezhenskyi. I have been working as a Frontend Developer since 2012 and I have experience with different projects, different scales, and frameworks. In 2020 I decided to run my YouTube channel "Decoded Frontend" about Web Development where I share my knowledge. Teaching has inspired me a lot and I decided to continue with it also on other platforms in order to help hundreds of people to be better developers.

Trusted by Developers From

Bank of Georgia

✨ Outstanding Feedback from Participants ✨

-- just a few of them --

Dany Paredes

Google Developer Expert for Angular | Senior Frontend Developer

Testing in Angular is scary for many developers, including me. I wish I had found this course earlier. It really helps you understand Angular testing, from the basic to the advanced parts, which are important for real work. The course clearly explains things like Testbed, setting up tests, lifecycle hooks, and adding dependencies. It teaches you how to write non-fragile tests, deal with standalone components, and more. After this, I am no longer scared of writing tests in Angular

Incredible Content

Andrey Chayko | Senior Frontend Developer at Semine AI

Dmytro's Conscious Angular Testing is an absolute game-changer! This course, crafted by a seasoned expert, provides a seamless blend of theory and hands-on experience, guiding you through the intricacies of testing in Angular with unparalleled clarity. Elevate your coding expertise and ensure bulletproof applications with this must-have resource for any Angular developer.

Pavlo Naduda

Software Developer

This course, with its well-organized structure and practical examples, proved immensely useful for me in simplifying complex concepts. The modular format makes it valuable for both beginners and those seeking specific insights. I highly recommend it for anyone looking to enhance their skills!

Questions You Might Have

And my honest answers to them

  • Which Testing Framework Is Used in the Course?

    In the course, the default stack Jasmine + Karma is used.

  • I Heard Karma Is Deprecated. Is The Course Information Still Relevant?

    Indeed, the Karma test runner has been recently deprecated. However, this does not make the course information outdated.

    Why? Karma is used solely for running tests. The Angular team assures that the transition from Karma to Web Test Runner will be seamless and will not require additional configuration.

    What about Jasmine? Jasmine will continue to be the default testing framework for Angular and will not be deprecated in the foreseeable future.

  • Can you provide a VAT compliant invoice?

    Yes. After the purchase, you can request the invoice at 👉 [email protected]. In the message, please provide the order number and your company data.

Level Up Your Angular Skills 🚀

Enroll now to master Angular Unit Testing with ease and confidence

🏆
Super Deal!

All CURRENT and FUTURE Courses with a -33% Discount

  • €245,00

    €245,00All Angular Courses in One Mighty Bundle 💪

    Level up your Angular skills as never before 🚀
    Buy All Courses

Safe Deal! 🛡️

14 Days Money-Back Guarantee

No worries! If it happened that the course didn't meet your expectations you can request your money back within 14 Days after the purchase. This is exactly the deal where you lose nothing but can get a loooot 😉