
In diesem Video beschreiben wir die Test Pyramide und wo hier die Unit Tests ins Spiel kommen. Außerdem geben wir eine allgemeine Definition für Unit Tests.
Lerne in diesem Video warum wir unsere Software testen wollen, welche verschiedenen Testformen uns dafür zur Verfügung stehen und wie diese sich unterscheiden.
Zusätzlich schauen wir uns an, was eigentlich der Zweck von Unit Tests ist.
In diesem Video sehen wir eine beispielhafte Verwendung von Unit-Tests am Beispiel von xUnit und einer User Klasse.
Es dient als Einstieg in die Entwicklung und das Setup.
In diesem Video schauen wir bei der Testpyramide genauer hin und lernen wie wir die Tests für unsere Softwaresysteme einordnen können und insbesondere wo wir die Unit Tests vorfinden.
In diesem Video schauen wir auf die best practices, die wir beachten sollten, wenn es darum geht Unit Tests zu schreiben, die uns und unsere Software voranbringen.
In diesem Video lernen wir das Setup, dass zum Darstellen aller Konzepte genutzt wird, sowie die Libraries, SDKS und ihre jeweiligen Versionen unter die Lupe.
In diesem ersten Kapitel haben wir ein wenig über die Theorie des Unit Testings gelernt, was als Unit Test qualifiziert und wie wir unseren ersten Test geschrieben haben.
In diesem Video schauen wir uns an, was uns in diesem Kapitel an Themen bevorsteht und warum wir die beiden Frameworks NUnit und xUnit ausgewählt haben.
Lerne in diesem Video die zwei verschiedenen Schulen des Unit Testings konzeptionell kennen.
Der Code/die Solutions als Zipfile für dieses Kapitel
Lerne in diesem Video den grundsätzlichen Aufbau einer Testmethode kennen. Verstehe Arrange, Act und Assert für xUnit sowie NUnit.
In diesem Video sehen wir uns an, wie man gute Testnamen vergibt, ob Logik in Tests erlaubt ist, wie wir Arrange Sektionen wiederverwenden können und wie groß jede der 3 Anatomie Phasen eigentlich sein sollte
In diesem Video nehmen wir uns erneut einen Test vor. Wir wollen hier eine Klasse erstellen, welche das längste Wort eines beliebigen Satzes zurück gibt. Diese Klasse testen wir dann auf ihre korrekte Umsetzung mit xUnit Tests.
Lerne in diesem Video Assertions genauer kennen. Verstehe warum es so viele verschiedene gibt und wie wir sie am besten einsetzen können.
In diesem Video schauen wir auf die Assertions die uns zur Verfügung stehen, um Strings eindeutig in der Assert Phase zu verifizieren.
In diesem Video lernen wir Assertions für die Nummern Typen in .Net kennen: Integers, double/float/decimal und wie wir diese nicht nur auf Gleichheit sondern auch auf Bereiche testen können.
In diesem Video sehen wir uns mit beiden Frameworks den Ansatz zum Asserten von Collections an.
Dies beinhaltet Enumerables, Sets und die verschiedenen Herangehensweisen.
In diesem Video sehen wir die Ansätze um Exceptions zu Asserten. Dabei gibt es einen kleinen Unterschied zwischen xUnit und Nunit aber im großen Ganzen sind beide Ansätze sehr ähnlich.
Lade dir hier die Cheat Sheets zu den beiden Assertions herunter.
Außerdem findest du hier die Links zur Dokumentation.
Lerne in diesem Video, wie ein Test Grundgerüst nutzen können, um es mit mehreren verschiedenen Datensätzen zu versehen.
So vermeiden wir immer wieder das gleiche Testgerüst aufzusetzen, wo sich nur die Arrange Phase unterscheiden würde.
Dieses Video zeigt die Grundsätze des Setup und Teardown Mechanismus für Unit Tests und geht kurz darauf ein, warum und wann man dies gewinnbringend einsetzen kann.
Lerne in diesem Video einen weiteren Aspekt des Setup und Teardowns in Unit Tests kennen:
Das OneTimeSetup / OneTimeTeardown Verhalten. Damit können wir für eine gesamte Testklasse den ganzen Setup Code nur ein einziges mal ausführen lassen.
In diesem Video fassen wir noch einmal alle Erkenntnisse des Kapitels zusammen.
Dieses Video führt uns in die Themen des Kapitels ein.
Lerne welche 4 verschiedenen Arten von Abhängigkeiten wir im Code begegnen können und wie sich diese auf das Testen auswirken.
Lerne in diesem Video was ein Testdouble ist und wie wir damit die verschiedenen Abhängigkeiten im Test handhaben.
Dieses Video stellt kurz die Domäne vor, anhand der wir unsere Mocks und Stubs erstellen wollen.
In diesem Video erstellen wir einen manuellen Mock, auch Spy genannt. Damit schreiben wir dann einen Test für unsere Domäne um eingehende Interaktionen zu verifzieren.
In diesem Video erstellen wir die Stub Methode für unseren manuell erstellten Mock (Spy).
Für den bisher gezeigten manuellen Mock lernen wir nun, wie wir automatisch generierte Mocks aus einem Framework heranziehen können.
Schaue in diesem Artikel nach, wie die Codebeispiele für dieses Kapitel organisiert sind.
Lade dir hier die Übersicht über alle Abhängigkeitskategorien und die verschiedenen Testdoublekategorien herunter
In diesem Video schauen wir noch einmal auf die Inhalte des Kapitels
Schaue in diesem Video auf die Kapitel zum praktischen Testen mit .Net und xUnit sowie Asp.Net core und Entity Framework Core.
In diesem Video untersuchen wir häufig verwendete Metriken wie Code und Branch Coverage auf ihren Nutzen.
Lerne die wichtigsten Aspekte zur Bewertung der Qualität eines einzelnen Unit Tests kennen: Die 4 Säulen eines guten Unit Tests.
Lerne in diesem Video welche Kriterien die erste Säule eines guten Tests umfasst.
Wir diskutieren in diesem Video was die Bewertung der zweiten Säule ausmacht und lernen alles über die Besonderheit dieser Säule.
In diesem Video sehen wir uns die 3te und 4te Säule genauer an.
Dieses Video beantwortet die Frage, ob es einen idealen Test mit Hinsicht auf die vier Säulen eigentlich geben kann und wie die Bewertung der Säulen voneinander abhängig sind.
Dieses Video beschreibt die drei verschiedenen Arten, die man Unit Tests aufbauen kann.
Lerne in diesem Video, welchen Teil des Codes wir mit Tests ausstatten sollten, damit wir einen möglichst hohen Testscore erzielen können.
Erkenne Test Anti pattern, wenn du sie siehst und vermeide so viele ernste Fehler beim Unit testing.
Dieses Video fasst noch einmal alle Themen des Kapitels zusammen
In diesem Video wird die Verwendung von VS Code und der Extensions die ich nutze genauer beschrieben.
Ein relativ kurzer Einstieg in alle Themen von EF core.
Unit Testing gehört heute in jedem guten Softwareprojekt dazu, um die Qualität der Software sicherzustellen.
Davon hast du sicher bereits häufiger gehört. Jetzt stellt sich allerdings die Frage, wie das eigentlich geht?
Dazu kommen Fragen wie:
- Warum sind trotz der Tests in den meisten Projekten, die Defekte häufig und die Tests eher hinderlich als nützlich?
- Wie solltest du im allgemeinen mit Abhängigkeiten im TestCode korrekt umgehen?
- Wie schreibe ich eigentlich einen Test?
- Welchen Teil meines Codes sollte ich am besten Testen?
- Wie beurteile ich eigentlich die Qualität meiner Unit Tests?
- Wie teste ich den Teil, der nicht durch Unit Tests abgedeckt wurde?
Diese und viele weitere Fragen, hilft dir dieser Kurs zu beantworten.
Du wirst lernen:
Warum eigentlich Software testen?
Verschiedene Gründe für Software Tests
der Testzyklus und die Testpyramide erklärt
Was hat es mit der Testpyramide auf sich
Wann schreiben wir Unit Tests
Wann schreiben wir Integration & E2E Tests
Wieviel Anteil sollte jede Testkategorie etwa haben
Aufbau eines Unit Tests
die 3 Phasen eines Tests
Anhand der Frameworks Nunit & xUnit in .NET core
Alle möglichen Assertions zur eindeutigen Validierung des Tests
Umgang mit Abhängigkeiten
Die Kategorien von Abhängigkeiten kennenlernen
Testdoubles: wie, wann und warum
Mocking Frameworks NSubstitute & Moq
Qualität von Unit Tests ermitteln
Die zwei Schulen des Unit Testings (London & Detroit)
Wie bewerte ich einen Unit Test --> 4 Säulen eines guten Unit Tests
Code Metriken einordnen
Test anitpattern erkennen
Über einfache Unit Tests hinaus
Integration Tests am Beispiel von Asp .NET core
Unit Testing von Entity Framework Core
Test Driven Development effektiv nutzen (TDD)
Diese und weitere Themen werden im Kurs behandelt.
Zudem werden deine Fragen jederzeit von mir beantwortet, du hast lebenslangen Zugriff auf den Kurs und die zahlreichen Materialien wie Cheat Sheets, den Code und Übersichten und Merkblätter. Zusätzlich noch die 30 Tage Rückgabegarantie von Udemy.
Also lerne endlich vernünftige Unit Tests zu schreiben und um jedes deiner Projekte effektiver zu machen!
LG
dein Dozent
Timo