You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

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

  1. Kennzeichnung Ziel: Definieren des eigentliches Ziels des Testfalles
  2. Bedingungen, Pre- und Postkonditionen
  3. Eingabe/Daten: korrekte/fehlerhafte Daten
  4. Erwartete Ausgabe: Klar definierte Reaktion auf Eingabe!
  5. Schritte/Prozeduren: Konkrete Operation die ausgeführt werden soll
  6. Dokumentation: Hilft bei der Rekonstruktion & Weiterentwicklung

Testfälle Rechenoperation

  1. Integer Division:
    • Eingabe: 10, 3
    • Erwarteter Output: 3 Beschreibung:
  1. Integer Multiplikation

    • Eingabe: 10, 3
    • Erwarteter Output: 30 Beschreibung:
    • Bei der Integer Multiplikation mit 10 mal 3 soll 30 als Ergebnis dokumentiert werden
  2. Integer Addition

    • Eingabe: 10, 3
    • Erwarteter Output: 13 Beschreibung:
    • Bei der Integer Addition mit 10 plus 3 soll 13 als Ergebnis dokumentiert werden.
  3. 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)