Vitest - JS/TS Testing Framework
Schulung & Kurs

Ein bis zwei Tage intensiver Einstieg in modernes Unit- und Integration-Testing mit Vitest für JavaScript und TypeScript Projekte.

Vitest – Das ultraschnelle Test-Framework für moderne Webentwicklung.
Erlebe blitzschnelle Ausführung, integrierte TypeScript-Unterstützung und eine vertraute Jest-ähnliche API – optimiert für Projekte mit Vite, aber flexibel genug für jedes Setup. Vitest liefert sofortiges Feedback, Smart-Watch-Mode und nahtlose Integration in deine Dev-Tools. Weniger Warten, mehr Entwickeln.

Kurse für Teams:

Gerne führen wir zugeschnittene Kurse für euer Team durch - vor Ort, remote oder in unseren Kursräumen.

In-House Kurs Anfragen

 

Kursinhalt:


Während dem Kurs entwickeln wir Schritt für Schritt ein umfassendes Set an Unit- und Integration-Tests für eine moderne JavaScript/TypeScript-Applikation. Dabei fokussieren wir uns auf die praktische Anwendung von Vitest:

– Überblick und Architektur von Vitest:
... - Vergleich Vitest vs. Jest vs. Mocha
... - Vite-Integration und Performance-Vorteile
... - Installation und Projekt-Setup
... - Konfiguration und Workspace-Setup
– Grundlagen des Unit-Testings:
... - Test-Struktur und Best Practices
... - Describe, Test und It Blocks
... - Assertions und Matchers
... - Setup und Teardown (beforeEach, afterEach)
– Mocking und Stubbing:
... - Function Mocks und Spies
... - Module Mocking
... - Timer Mocks (vi.useFakeTimers)
... - Date und Random Mocking
... - Partial Mocks
– Asynchrones Testing:
... - Promises und Async/Await
... - Callbacks und Done
... - Timeout-Handling
... - Concurrent Tests
– Integration Testing:
... - Testing von Komponenten-Interaktionen
... - API-Integration Tests
... - Database Mocking
... - Environment-spezifische Tests
– Frontend-Testing mit Vitest:
... - DOM Testing mit happy-dom/jsdom
... - Component Testing (React, Vue, Svelte)
... - Testing Library Integration
... - Event-Handling und User-Interaktionen
– Code Coverage:
... - Coverage-Reports mit c8/istanbul
... - Coverage-Thresholds
... - Branch und Line Coverage
... - Uncovered Code identifizieren
– Snapshot Testing:
... - Inline Snapshots
... - File Snapshots
... - Snapshot-Updates und -Management
... - Custom Serializers
– Performance und Optimierung:
... - Parallele Testausführung
... - Test-Sharding
... - Watch-Mode und HMR
... - Benchmark-Tests mit Vitest Bench
– Advanced Features:
... - Custom Matchers
... - Test Context und Fixtures
... - In-Source Testing
... - Type Testing mit expect-type
– CI/CD Integration:
... - GitHub Actions, GitLab CI Integration
... - Test-Reports und Artefakte
... - Parallele CI-Runs
... - Docker-basierte Test-Umgebungen

Der Kurs basiert auf verfeinertem und erprobtem Kursmaterial mit Erläuterung, praktischen Übungen, Kurs-Projekt mit Code, Lösungs-Code und weiterführenden Informationen.

Du lernst diese Konzepte nicht nur kennen, sondern setzt sie auch praktisch um.


Disclaimer: Der effektive Kursinhalt kann, abhängig vom Trainer, Durchführung, Dauer und Konstellation der Teilnehmer:innen von obigen Angaben abweichen.

Ob wir es Schulung, Kurs, Workshop, Seminar oder Training nennen, wir möchten Teilnehmer/innen an ihrem Punkt abholen und mit dem nötigen praktischen Wissen ausstatten, damit sie die Technologie nach der Schulung direkt anwenden und eigenständig vertiefen können.

Ziel:

Am Ende des Kurses sind Teilnehmer in der Lage, umfassende Unit- und Integration-Tests mit Vitest zu entwickeln und in moderne JavaScript/TypeScript-Projekte zu integrieren.


Dauer:

2 Tage (Wird bei In-House Kursen individuell angepasst.)


Form:

Bewährter Mix aus Erläuterung, Live-Coding und praktischen Übungen mit gemeinsamem Aufbau eines umfassenden Test-Suites.


Zielgruppe:

Software-Entwickler, welche moderne Unit- und Integration-Tests für JavaScript/TypeScript-Projekte mit Vitest entwickeln möchten.


Voraussetzungen:

Grundkenntnisse in JavaScript oder TypeScript sowie Erfahrung in der Entwicklung mit modernen JavaScript-Frameworks (React, Vue, Svelte) oder Node.js.


Vorbereitung:

Jeder Teilnehmer erhält nach der Anmeldung einen Fragebogen und Installationsanleitung zugestellt. Passend zu den Antworten senden wir ein individuelles Feedback.

In-House Kurs anfragen:

In-House Kurs Anfragen

Trage dich in die Warteliste ein für weitere öffentliche Kurs-Termine. Sobald wir genügend Personen auf der Warteliste haben, klären wir einen möglichst für alle passenden Termin ab und schalten einen neuen Termin auf. Falls du direkt mit zwei Kollegen oder Kolleginnen teilnehmen möchtest, können wir sogar direkt einen öffentlichen Kurs für euch planen.

Warteliste

(Falls ihr bereits mehr 3 Teilnehmer:innen oder mehr habt, klären wir mit euch direkt euren Wunschtermin ab und schreiben den Kurs aus.)

Mehr über Vitest



Vitest ist ein modernes Unit-Testing-Framework, das von der Vite-Community entwickelt wurde und speziell für die Anforderungen moderner JavaScript- und TypeScript-Projekte optimiert ist. Es bietet native ESM-Unterstützung, blitzschnelle Testausführung durch Vite's Transformation-Pipeline und eine Jest-kompatible API für einfache Migration.




History


Vitest wurde 2021 von Anthony Fu und dem Vite-Team entwickelt, als die Notwendigkeit eines modernen Testing-Frameworks erkannt wurde, das nahtlos mit Vite zusammenarbeitet. Das Projekt entstand aus der Erkenntnis, dass bestehende Testing-Tools wie Jest nicht optimal für ESM-basierte Projekte und Vite's schnelle Transformation-Pipeline geeignet waren.


Die Entwicklung wurde massgeblich von der Vite-Community vorangetrieben, mit wichtigen Beiträgen von Entwicklern wie Hiroshi Ogawa und Patak. Wichtige Meilensteine waren die Einführung von Browser Mode (2022), Workspace Support für Monorepos (2023) und Vitest UI für eine grafische Test-Oberfläche. Die Jest-kompatible API ermöglichte vielen Projekten eine einfache Migration.


Heute ist Vitest eines der am schnellsten wachsenden Testing-Frameworks im JavaScript-Ökosystem und wird von grossen Projekten wie Nuxt, Vue und Vite selbst eingesetzt. Es hat neue Standards für Performance und Developer Experience im Testing gesetzt und bietet mit seiner nativen TypeScript- und ESM-Unterstützung eine moderne Alternative zu etablierten Tools. Die enge Integration mit dem Vite-Ökosystem und die aktive Community sichern die kontinuierliche Weiterentwicklung.