From 8c59f14d19184a3170456c65276dd0d6f06a1e3b Mon Sep 17 00:00:00 2001 From: fdai7834 Date: Fri, 15 Dec 2023 14:58:49 +0100 Subject: [PATCH] Update Lerntagebuch Woche 7.1 --- Lerntagebuch.md | 27 ++++++++++++++++++++++++++- Testen.md | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 Testen.md diff --git a/Lerntagebuch.md b/Lerntagebuch.md index cfb332a..a87c1b8 100644 --- a/Lerntagebuch.md +++ b/Lerntagebuch.md @@ -134,4 +134,29 @@ ### Kritik --- -## SU 07 (XX.12.2023) +## SU 07 (12.12.2023) + +### Lernziel + - kennenlernen von verschiedenen Fehlerarten + - grundlagen von Testverfahren + - Testpyramide + - Testmethodologie + +### Erkenntnis + Für das kommende Gruppenprojekt können wir solche Testverfahren nutzen um zu schauen inwiefern der Code so agiert wie wir es wollen. Durch + solche Tests können einfach Fehler, also ungewollte Aktionen vom Programm entdeckwerden. Des Weiteren können so kaskadierte Fehler einfach + von uns erkannt und verhindert werden. Dazu können wir durch Tests auch schauen, ob die einzlenen Programmabschnitte, welche ja von verschiedenen + Gruppenmitgliedern erstellt sein können, auch fehlerfrei zusammenarbeiten. + +### Wiederholung + Testerstellung: + Es gibt, ähnlich wie bei dem Projektmanagement, Schritte welche die Erstellung eines Tests vereinfachen und eingehalten werden sollten. Dabei + muss man zuerst einen Testfall dokumentieren, dabei sollte man einen Programmabschnitt mit verschiedenen Eingabedaten pruefen. Ein Beispiel für + einen Taschenrechner wäre die Integer Division, zum Beispiel bei 10 durch 3, dort sollte man den erwarteten Wert 3 haben. Dazu sollten bei + solchen Testfaellen auch immer Fehlerfaelle untesucht werden, dort könnte man zum Beispiel eine ungültige Eingabe ueberpruefen oder die Division + durch 0. + +### Kritik + +--- +## SU 08 (XX.12.2023) diff --git a/Testen.md b/Testen.md new file mode 100644 index 0000000..d4a9f35 --- /dev/null +++ b/Testen.md @@ -0,0 +1,46 @@ +## Testen + +### Was ist ein Test? + - überprüft eine Software/Code auf verschiedene Anforderungen + - Prozess der die funktionalität der Software prüft + +### Was ist ein Fehler? + - abweichungen zwischen soll und ist Zustand + +### Welche Ziele haben Tests? + - Fehler finden + - Qualität überprüfen + - Verhalten des Codes testen + +### Nennen sie Bestandteile eines Tests + - Testfall defenieren + - Stichprobe/Testdaten -> Korrekte und Fehlerhafte Daten + - Testumgebung -> Software, Hardware + - Testprozedur -> Beschreibung der genauen Instruktionen im Testfall + - Testausführung + - Testresultat + - Testbericht + +### Welche Bedeutung hat eine Testpyrmide? + - Konzept der die ausgewogene Balance zw. unterschiedlichen Testarten hervorzeigt + - Unterste Layer : Unit Test + - Mittlere Layer : Integration Test + - Top Layer : UI/End-to-End + - Fehler sollen frühzeitig, kostengünstig behoben werden + - Effizient beim Testing -> Feedback + - Weiter oben in der Hierachie komplexere Tests + +### Beschreiben sie ein Element im Testprozess(Testfall) + - Ziel: Defeniert das eigentliche Ziel des Tests + - Bedingungen Pre und Postkonditionen + - Eingabe/Daten: korrekte/fehlerhafte Daten + - Erwartungen/Ausgabe Klar defenierte Reaktion auf Eingabe + - Schritte/Prozeduren: konkrete Operation die ausgeführt werden soll + - Dokumentation + +### Testfall Zeielenumbruch + 1. Normale Zeilenlänge + - Eingabe "Moin, der Satz wird nicht komplett in die spezifische Zeilenlänge passen, da er zu lang ist. + - Erwarteter Output "Moin, der Satz wird nicht komplett in die spezifische Zeilenlänge + - passen, da er zu lang ist. + - Beschreibung: Hier soll ein Zeilenumbruch nach der Zeilenlänge erstellt werden.