2.8 KiB
#Übung Tests
Was ist ein Test?
Prozess der die Funktionalität der Software prüft. Ein Versuch auf mehreren Art und Weisen eine Software auszuprobieren, ob sie fehlerfrei oder fehlerbehaftet läuft und den Erwartungen entspricht
Was ist ein Fehler?
Abweichung Soll/Ist Zustand Ein Fehler ist ein unerwünschtes Verhalten der Software, welches durch mehrere Einflüsse auftreten kann z.B.: Tippfehler, Daten sind nicht wie erwartet, Folgefehler
Welche Ziele haben Tests?
unerwünschtes Verhalten der Software voraussehen Qualitätsicherung Grenzen der Software ermitteln vertrautheit mit der Software
Nennen Sie die Bestandteile eines Tests
Testfall Testdaten -> Korrekte und fehlerhafte Daten Testumgebung -> Software, Hardware, Netzwerk Testprozedur -> Beschreibt die genauen Instruktionen, die bei dem Testfall Testausführung -> Verhalten der Software beobachten & Ausgabe prüfem Testresultat -> Abgleich Erwartungswert vs. Realität Testbericht -> Testresultate zusammenfassen, Performance-Metriken auswerten
Stichproben, Testobjekt, Testumgebung, Testziel, Vergleich Soll/Ist Werte
Welche Bedeutung hat die Testpyramide
Visualisiert die unterschiedlichen Teststufen Konzept der die ausgewogene Balance zwischen unterschiedlichen Testarten herstellt
Unterste Layer: Unit Tests Mittlere Layer:Integration Tests Top Layer: UI/End-to-End
Fehler sollen frühzeitig, kostengünstig behoben werden. Effizient beim Testing -> rasches Feedback Weiter oben in der Hierachie komplexere Tests
Beschreiben Sie einen Testfall
- Kennzeichnung Ziel: Definieren des eigentliches Ziels des Testfalles
- Bedingungen, Pre- und Postkonditionen
- Eingabe/Daten: korrekte/fehlerhafte Daten
- Erwartete Ausgabe: Klar definierte Reaktion auf Eingabe!
- Schritte/Prozeduren: Konkrete Operation die ausgeführt werden soll
- Dokumentation: Hilft bei der Rekonstruktion & Weiterentwicklung
Testfälle Rechenoperation
- Integer Division:
- Eingabe: 10, 3
- Erwarteter Output: 3 Beschreibung:
-
Integer Multiplikation
- Eingabe: 10, 3
- Erwarteter Output: 30 Beschreibung:
- Bei der Integer Multiplikation mit 10 mal 3 soll 30 als Ergebnis dokumentiert werden
-
Integer Addition
- Eingabe: 10, 3
- Erwarteter Output: 13 Beschreibung:
- Bei der Integer Addition mit 10 plus 3 soll 13 als Ergebnis dokumentiert werden.
-
Integer Subtraktion
- Eingabe: 10, 3
- Erwarteter Output 7 Beschreibung:
- Bei der Integer Subtraktion mit 10 minus 3 soll 7 als Ergebnis dokumentiert werden.
Testfälle Zeilenumbruch
Intelligenter Zeilenumbruch Keine Eingabe 100 Eingaben bei 80 Max einer Zeile 80 Eingaben bei 80 Max einer Zeile
Beispiele veröffentliche Softwarefehler
latent versteckter Fehler OpenSSL Heartbleed (2014) maskiert verdeckter Fehler Pentium FDIV Bug (1994) kaskadiert Folgefehler Ariane 5 Flug 501 (1996)