€468 – €828

Angular Unit-Testing Workshop - Fundamentals & Test-Driven Development

Actions and Detail Panel

€468 – €828

Event Information

Share this event

Date and Time

Location

Location

Online Event

Refund Policy

Refund Policy

Contact the organizer to request a refund.

Eventbrite's fee is nonrefundable.

Event description
Learn all you need about Unit-Testing Angular with an Angular Google Developer Expert!

About this Event

Presentation

Unit-testing or more specifically, front-end unit-testing is undeniably in the top 3 of the most complex topics associated with Angular development.

When one is confronted with this complexity, it is tempting to give up, but at what cost? It is totally possible to develop an application without unit-tests but is it really faster? What happens to code maintainability a few months or sometimes just weeks later? Can we serenely refactor and deploy our apps regularly while it is getting older and complex in our hands?

This workshop presents, through practical exercises, pragmatic Angular unit-testing techniques. You will also learn how to implement human-readable, maintainable, and above all profitable tests.

Goals

During this workshop, you will learn:

  • how to implement unit tests for your Angular application with the Test-Driven Development approach,
  • choose the type of unit-tests that fits best depending on the context,
  • decouple tests from code to encourage refactoring and tidying up when needed,
  • implement maintainable and human-readable unit-tests,
  • how to implement maintainable and human-readable unit-tests,
  • the difference between fakes, stubs, spies and mocks + how and when to use them,
  • the difference between isolated, shallow & integration component testing,
  • how to choose the right scope for your tests,
  • how and when to use Angular CDK Harnesses,
  • how to test HTTP communication.

Where

Online

Event Capacity : 10

ℹ️ To keep the workshop interactive, the event has a limited capacity of 10 attendees.

Schedule

  • This workshop is split into 3 x 3.5 hours sessions from 1PM to 4:30PM UTC.

Prerequisites

  • Curiosity and a good Web culture.
  • Being familiar with the Angular ecosystem (e.g. know how to create a component, implement and use Inputs / Outputs).
  • A computer connected to the Internet 😊 .

Content

Introduction to testing

  • Why test?
  • The different types of tests.
  • A unit-test example.

Testing Strategy

  • What should we test and how?
  • Definition of a unit of code.
  • Classicists vs Mockists.
  • Exercise: Our first unit-test.

Jest

  • Pros & cons.
  • Setup jest.
  • Debugging with Jest.

Test-Driven Development

  • Test-Driven Development: origin & benefits.
  • Tips & tricks.
  • Bonus Exercise: Progressive TDD, Timeboxed TDD & TCR.

Service Testing

  • Exercise: Implement a service unit-test with the Test-Driven Development approach.

Mocks, Spies, Stubs & Fakes

  • Mocks vs Spies vs Stubs vs Fakes.
  • Overriding Angular dependency injection.
  • Exercise: Emulate the behavior of a dependency with Mocks, Spies & Stubs.

Component Testing

  • Implementing a component's unit-test.
  • Different types of component tests: Integration vs Shallow vs Isolated.
  • Interacting with the DOM.
  • Exercise: Component shallow testing.
  • Exercise: Component integration testing.
  • Exercise: Testing Inputs & Outputs based communication.

HTTP Testing

  • Mocking HTTP requests.

Your Coach: Younes Jaaidi

Younes is a Google Developer Expert for Angular & Web Technologies.

He is a trainer, consultant & Software Development coach who loves the challenge of boosting teams' efficiency and helping everyone enjoy every part of their job. He is passionate about testing, continuous deployment, automation, and simplicity.

His experience convinced him that the key to making quality products is collective ownership, passion, and knowledge sharing.

In his spare time, you will find him contributing to open-source software, writing articles, or speaking at meetups or conferences (e.g. Interchangeable Components at AngularConnect, Limbo at AngularUp)... and sometimes sailing.

Share with friends

Date and Time

Location

Online Event

Refund Policy

Contact the organizer to request a refund.

Eventbrite's fee is nonrefundable.

Save This Event

Event Saved