====== Testen von Softwaresystemen (SS 19) ====== * Entspannte Atmosphäre, Es gibt Rückmeldung zu richtigen Antworten und Nachfragen nach, wo etwas unklar/ungenau ist. Fragen werden gerne nochmal neu formuliert gestellt. Papier und Stift liegen bereit. * Note: 1,3 ===== A-Teil ===== * V-Modell kurz hinschreiben, muss kein Kunstwerk werden und erklären wo dort Tests stattfinden und was deren Ziel ist. * Was sind statische Tests vs dynamische Tests? * Was kann ein Review und was eine statische Analyse? * 3 Arten von Tests: Blackbox, Whitebox, Erfahrungsbasiert * 3 Arten von Blackbox-Tests nennen und erklären: Äquivalenzklassen, Grenzwertanalyse, Entscheidungstabellen * Was ist ein Testkonzept und was steht da drin? * Was könnten Testendekriterien sein? (Zeit, Überdeckungsmaße(MC/DC, Anforderungsüberdeckung, ...)) * Risikobasiertes Testen: Was macht man und warum? ===== B-Teil ===== * 3 Arten von Whiteboxtests(Kontrollfuss, Datenfluss, Bedingungen) * Kontrollfluss: Warum keine Pfadüberdeckung und was stattdessen? -> Boundary-Interior und anhand von Beispiel mit Verzeweigung und Schleife ähnlich dem Beispiel in der Vorlesung erklären. * Datenfluss -> All-Uses erklären * Bedingung: MC/DC anhand von Beispiel mit drei atomaren Prädikaten erklären; Wie viele Testfälle mindestens benötig, um MCDC zu erreichen? * Wie gehts weiter, um Zuverlässigkeit zu erreichen? Güte der Testfälle -> Mutationstesten -> Äquivalente Mutanten aussortieren! * Zuverlässigkeitsbewertung: -> Man möchte MTTF oder Versagenswahrscheinlichkeit schätzen. * Wie wählt man Testfälle für statistisches Testen? Zufällig aber anhand eines Operationsprofils, keine Testfälle aus systematischen Tests. * Operationsprofil erklären: Mit welcher Wahrscheinlichkeit verwendet ein Nutzer ein bestimmte Funktion? -> Für Funktionen die häufig verwendet werden, werden mehr Testfälle ausgewählt. -> Keine Formeln oder Namen für Wachstumsmodelle verlangt, nur Verständnis darüber, wie Zuverlässifkeitswachstum funktioniert. Bei mir war die Prüfungzeit hier zu Ende, aber wenn noch Zeit ist kommt noch ein wenig zu Theorem Proving und Model Checking.