Professional Angular Testing: Cypress Edition

Qualitätssicherung mit modernen Werkzeugen: Jest, Cypress und Storybook
Schulung für die langfristige Qualitätssicherung Ihrer Angular-Lösungen
Dauer
2 Tage
Nächster Termin
18.04.2024
(1 weiterer Termin)
Level
Grundkenntnisse Angular erforderlich
Ort
Remote
Sprache
Englisch / Deutsch
Preis ab
1.210€

Rainer Hahnekamp

Erfahrener Softwareentwickler und Architekt für Enterprise Anwendungen.
Betreibt Ng-News, einen wöchentlichen Angular Video-Newsletter.

Jest, Cypress und Storybook – Die perfkete Kombi für langfristige Qualität

Dieser Workshop deckt alle notwendigen Aspekte für das Testen in Angular ab. Sie lernen nicht nur die verschiedenen Techniken sondern auch, wann man diese anwendet. Ein wesentlicher Bestandteil sind die praktischen Übungen und die anschließenden Diskussionen, wo auch Ihre individuelle Problemstellungen behandelt werden können.

Nach diesem Workshop werden Sie unter anderem in der Lage sein:

  1. zu verstehen, wann man Unit-, Komponenten-, Integrations- und E2E-Tests anwendet,
  2. asynchronen Code zu testen,
  3. mit dem gerenderten DOM zu interagieren,
  4. den Boilerplate Code durch Einsatz modernster Tools signifikant zu reduzieren,
  5. das Layout der Komponenten durch Screenshot Tests (Visual Regression Tests) zu testen,
  6. Ihre E2E-Tests so zu designen, dass sich diese sich nicht gegenseitig beeinflussen,
  7. instabile E2E-Tests zu vermeiden,
  8. Ihre Architekturen auf Testbarkeit perfekt auszurichten

🔥 Bonus: Aktuellste Angular-Features

  • 🚥 Testen und Signals
  • Testen und Standalone Components
  • Testen und Standalone APIs

Video-Intro von Workshop-Autor, Rainer Hahnekamp

 

Highlights

✅ Komplett online – Keine Anreise erforderlich!
✅ Interaktiv: Stellen Sie Fragen und nehmen Sie an Diskussionen teil
✅ Viele Übungen und Live-Coding
✅ Fallstudie dient als Blaupause für eigenen Projekte
✅ Pair-Programming mit Ihrem Trainer

Agenda

Teil 1: End-to-End Tests mit Cypress


Cypress Grundlagen

  • Übersicht über bestehende E2E Frameworks
  • Unterschied zwischen WebDriver und Chrome DevTools Protokoll
  • Das cy-Objekt
  • Cypress und “Actionability”
  • Queries, Actions und Assertions
  • Vermeiden von instabilen E2E-Tests
  • Implizite und explizite Assertions
  • Queries nach Accessibility-Kriterien mit der Testing Library

Cypress Fortgeschritten

  • Page Object Models
  • Das cy-Objekt erweitern
  • Eigene Queries erstellen
  • Mocking von HTTP-Anfragen
  • Manipulation von HTTP-Anfragen
  • API Tests
  • Tasks
  • Sitzungsdaten cachen mit cy.session
  • Multi-Origins mit cy.origin
  • Optimales Test-Design
  • Konditionale Tests
  • Test Coverage


Unit Tests für Angular

  • Jest vs Jasmine
  • Einsatz von Jest
  • Asynchronität
  • fakeAsync vs. waitForAsync
  • Mocking: jest.mock, jest.fn, jest.spyOn
  • Tests mit der inject Funktion bzw. TestBed

Testen von Reaktivität

  • RxJS Marbles für Pipe-Operatoren
  • Anwendung von RxJs Marbles in normalen Unit Tests
  • Unit Tests in ngrx


Grundlagen

  • TestBed konfigurieren
  • Unterschiede zwischen Standalone und NgModules beim Einsatz von TestBed
  • Mocking von Komponenten, Direktiven und Pipes mit ng-mocks
  • Vor- und Nachteile des HttpTestingController
  • RouterTestingHarness einsetzen

Cypress Component Test Runner

  • Mounten von Komponenten
  • Dynamische Wrapperkomponenten
  • Setzen von @Input Properties
  • Direkter Zugriff auf Angulars DI

„Fallbacktechnologien“

  • Angular Harnesses
  • Spectator
  • Testing-Library
  • Zwei konträre Ansätze: London & Detroit
  • Teststrategien: Wann soll ich was verwenden?
  • TDD im Frontend?
  • Testpokal vs. Testpyramide
  • Testbare Architektur
  • Screenshot Testing mit Playwright
  • Storybook
  • Infrastruktur für visuelle Regressions-Tests

Aktuelle Termine

Alle unsere Workshops & Seminare sind jederzeit auch Remote oder In-House verfügbar. Kontaktieren Sie uns für eine Terminvereinbarung
18.04. - 19.04. | 09:00 - 17:00 (CET)
Regular Ticket bis 18.04.2024
Gruppenrabatt (3+ Personen)
Online |
  Deutsch
 |  Rainer Hahnekamp
ab 1.210€
22.04. - 23.04. | 09:00 - 17:00 (CET)
Regular Ticket bis 22.04.2024
Gruppenrabatt (3+ Personen)
Online |
  Englisch
 |  Rainer Hahnekamp
ab 1.210€
Angular Architects Logo

Individuelle Firmenworkshops

Alle unsere Workshops & Seminare sind jederzeit auch Remote oder In-House verfügbar.
Kontaktieren Sie uns für eine Terminvereinbarung

Jetzt anfragen

FAQs zu unseren Workshops

Wie läuft eine Angular-Schulung bei euch ab?

Unsere Seminare sind eine Mischung aus Vortrag, Live-Coding und konkreten Übungen. Gemeinsam setzen wir das Erlernte während des Workshops direkt an einem Beispielprojekt um. Diese Mischung garantiert, dass der Kurs nie langweilig wird und statt grauer Theorie „Hands-On“ gefragt ist.

Unsere Angular-Schulung Struktuiere Einführung richtet sich alle, die künftig Anwendungen mit Angular entwickeln wollen oder dies schon machen und nun die Hintergründe, Zusammenhänge und Building-Blocks des Frameworks besser verstehen wollen.

Die Teilnehmer sollten grundlegende Kenntnisse in der Web-Entwicklung haben (grundlegende Kenntnisse von HTML und JavaScript).

Für fortgeschrittene Angular-Entwickler*innen bieten wir Advanced Angular Seminare und Intensivkurse zu spezifischen Anwendungsfällen.

Unsere Angular-Schulungen finden als öffentliche Workshops in Seminarräumen zentraler Hotels in Deutschland, Österreich und der Schweiz statt. In-House Schulungen finden bei euch im Büro oder Seminarraum statt.

Alle Kurse sind auch als Remote-Workshops möglich, wo wir uns online im Virtual Classroom treffen, und die Schulung via Videocalls, Screensharing und gemeinsamen Live-Coding abhalten.

Unsere Schulungen werden von erfahrenen Trainern und Software-Architekten durchgeführt. Wir haben in den letzten Jahren namhafte Firmen – u. a. bekannte Banken, Versicherungen, Industriekonzerne – in Sachen Angular betreut. Zu den Trainern gehören bekannte Konferenzsprecher, Autoren von Büchern und Fachartikeln, Blogger, Google Developer Experts und Hochschuldozenten.

Gerade bei dezitierten Firmenschulungen richten wir uns gerne nach euch. Typische Zeiten sind 9:00Uhr bis 16:30/17:00Uhr.

Auf jeden Fall. Seit der Pandemie ist das sogar unser Hauptgeschäftsmodell und wir haben sehr gute Erfahrungen damit gemacht. Wir nutzen eine Kombination aus Screen-Sharing, interaktiven Online-Whiteboards und verbinden uns auf Wunsch während der Übungen zur Unterstützung auch gerne auf Ihrem Rechner. Wie bei unseren On-Site-Schulungen setzen wir auch hier auf eine Kombination aus kurzen Präsentationen, Diskussionen, Live-Coding und Hands-On-Labs.

Da die Anreise wegfällt, sparen Sie auch Zeit und Geld. Außerdem können wir flexibler auf Ihre Terminwünsche reagieren.

Ja, sehr gerne. Genaugenommen ist das einer der Vorteile von dedizierten Unternehmensschulungen. Sie können gerne unsere Agada-Vorschläge gewichten, kürzen oder ergänzen. In der Regel findet auch ca. 2 Wochen vor der Schulung eine Abstimmung mit Ihrem Trainer durch. Auf Wunsch auch schon gerne früher.

Für Angular spricht unter anderem seine weite Verbreitung, aber auch die Tatsache, dass mit Google ein Internet-Gigant, der das Framework auch sehr intensiv nutzt, steht. Bei Google alleine existieren über 2600 darauf basierende Lösungen. Durch die weite Verbreitung existiert eine große Community und somit viel Know-How am Markt sowie (freie und kommerzielle) Produkte, die auf Angular abgestimmt sind. Außerdem bietet Angular vieles von dem, was Sie für große Anwendungen benötigen, ab Werk: Testautomatisierung, Formularverwaltung, Routing etc. Insofern erhalten Sie einen Stack, dessen Bestandteile aufeinander abgestimmt sind und langfristig zusammenspielen.

Die gute Nachricht vorweg: Teilnehmer mit unterschiedlichem Vorwissen sind in der Erwachenenbildung die Regel und nicht die Ausnahme. Deswegen finden Sie auf unseren Übungblättern optionale Hinweise zum Einblenden und Bonus-Übungen, für die, die etwas schneller sind. Natürlich unterstützen wir auch persönlich bei den Übungen.

Falls Sie bei uns eine Firmenschulung buchen, überlassen wir diese Entscheidung prinzipiell Ihnen. Allerdings zeigt die Erfahrung, dass es nicht mehr als 15 Teilnehmer sein sollten, zumal ein Seminar sehr stark von Fragen, Diskussionen und praktischen Übungen lebt.

Bitte installieren Sie die folgenden Software-Pakete auf Ihrem Rechner:

– NodeJS in aktueller Version (wir testen mit aktueller LTS-Version)
– Angular CLI (npm i -g @angular/cli)
– Git
– Visual Studio (frei) oder WebStorm/IntelliJ (kommerziell)

Nichts mehr verpassen!

Nie mehr etwas verpassen - abonnieren Sie jetzt unseren Newsletter!
Bitte aktiviere JavaScript in deinem Browser, um dieses Formular fertigzustellen.

Ausgewählte zufriedene Kunden