Was sind statische Tests?
Statische Tests prüfen die Testobjekte an sich: Arte des Entwiclkungsporzesses, z. B. informelle Texte, Modelle, formale Texte, Programmcode, ...
Was ist ein dynamischer Test?
Prüfung des Testobjekts durch Ausführung auf einem Rechner.
Was ist eine Testbedingung?
Ein Aspekt der Testbasis, der üfr die Erreichung bestimmter Testziele relevant ist?
Was ist ein Testziel?
Ein Grund oder Zweck für den Entwurf und die Ausführung von Tests.
Was bedeutet vertikale Rückverfolgbarkeit?
Die Rückverfolgung von Anforderungen durch die Ebenen der Entwicklungsdokumentation bis zu den Komponenten.
Was bedeutet Horizontalte Rückverfolgbarkeit?
Das Verfolgen von Anforderungen einer Teststuffe über die Ebenen der Testdokumentation (z. B. Testkonzept, Testentwrufsspezifikation, Testfallspezifikation, Testablaufspezifikation oder Testskripte).
Was ist eine Rückverfolgbarkeitsmatrix?
Eine zweidimensionale Tabelle, die die gegenseitigen Beziehung zweier Entitäten wie z. B. Anforderungen und Testfälle darstellt. Die Tabelle wird zur Bestimmung und Erreichung der Überdeckung verwendet, um von einer Entität zur anderen und zurück zu verfolgen, und um die Auswirkungen von Änderungsvorschlägen zu bewerten.
Was sind die Ziele und Voraussetzungen von dynamischen Tests?
Ziele (1/4): Nachweis der Erfüllung der Anforderungen durch das Testobjekt
Ziele (2/4): Nachweis durch stichprobenhafte Programmläufe
Ziele (3/4): Aufdeckung von eventuellen Abweichungen und Fehlerwirkungen
Ziele (4/4): Mit wenig Aufwand möglcihst viele Anforderungen überprüfen bzw. Fehler nachweisen
Voraussetzung: Testobjekt muss ausführbar sein
Was ist ein Testrahmen (test harness, test bed)?
Eine Testumgebung, die aus den für die Testausführung benötigten Treibern und Platzhaltern besteht.
Was ist eine Testumgebung?
Eine Umgebung, die benötigt wird, um Tests auszuführen. Sie umfasst Hardware, Instrumentierung, Simulatoren, Softwarewerkzeuge und andere unterstützende Hilfsmittel.
Was sind Platzhalter (stub)?
Eine rudimentäre oder spezielle Implementierung einer Softwarekomponente, die verwendet wird, um eine noch nicht implementierte Komponente zu ersetzen bzw. zu simulieren.
Was ist ein Treiber / Testtreiber (driver)?
Ein Testwerkzeug, das eine zu testende Komponente/ein System aufruft und/oder steuert.
Was ist ein Testverfahren (Test Technique)?
Eine Vorgehensweise, nach der Testfälle abgeleitet oder ausgewählt werden.
Was sind Eingangskriterien?
Die Menge an Bedingungen für den offiziellen Start einer bestimmten Aufgabe.
Was sind Endekriterien?
Die Menge an Bedingungen für den offiziellen Abschluss einer bestimmten Aufgabe.
Bsp. Endekriterium für Testdurchführung: Mindestens 80% des getesteten Quellcodes müssen durch Tests ausgeführt worden sein.
Wovon kann die Auswahl von Testverfahren abhängen?
1. Art und Komplexität der Komponente / des Systems
2. Regulatorische Standards
3. Anforderungen
4. Risikoart und -stufe
5. Testziele
6. Verfügbare Dokumentation und Werkzeuge
7. Kenntnisse und Fähigkeiten des Testers (insb. mit Bezug auf das Testverfahren)
8. Verfügbare Werkzeuge
9. Zeit und Budget
10. Softwareentwicklungslebenszyklus-Modell
11. Erwartete Nutzung
12. Erwartete Fehlerzustände
13. Allgemeine Situation und Teststufe
Was sind Black-Box-Testverfahren?
Keine Informationen über den Programmtext und den inneren Aufbau
Steuert das Testobjekt nur durch die Wahl der Eingabetestdaten (PoC - Point of Control liegt außerhalb des Testobjektes)
Beobachtet das Verhalten des Testobjekts von außen (PoO - Point of Observation liegt außerhalb des Testobjekts)
Modelle bzw. Anforderungen an das Testobjekt, ob formal oder nicht formal, zur Spezifikation der Aufgabe, der Software oder ihrer Komponente heranziehen
Von diesen Modellen auch systematisch Testfälle ableiten
Synonyme: spezifikationsorientierte oder verhaltensgesteuerte Testverfahren
Was sind White-Box-Testverfahren?
Testfälle basierend auf Programmstruktur des Testobjektes erzeugen
Ableiten von Testfällen aus Strukturinformation, beispielsweise aus Code
Messung der Überdeckung des Codes für vorhandene Testfälle
Erhöhung der Überdeckung durch systematische Ableitung von Testfällen
Analyse des inneren Ablaufs im Testobjekt während der Testdurchführung
Point of Observation liegt innerhalb des Testobjekts
Eingriff in den Ablauf im Testobjekt möglich
Point of Control kann innerhalb des Testobjekts liegen
Synonym: strukturorientierte Testverfahren
Was sind erfahrungsbasierte Testverfahren?
Wissen und Erfahrung von Menschen zur Ableitung der Testfälle nutzen
Wissen von Testern, Entwicklern, Anwendern und Betroffenen über die Software, ihre Verwendung und ihre Umgebung
Wissen über wahrscheinliche Fehler und ihre Verteilung
Was sind Beispiele für Black-Box-Testverfahren?
Äquivalenzklassenbildung
Grenzwretanalyse
Zustandsbasierter Test
Entscheidungstabellentest
szenarienbasierter Test
Ursache-Wirkungs-Graph-Analyse
Klassifikationsbaumverfahren
Syntaxtest
Zufallstest
Kombinatorisches Testen
Was sind Beispiele für White-Box-Testverfahren?
Anweisungstest (Statement Testing)
Zweigtest (Branch Testing)
Entscheidungstest (Decision Testing)
Entscheidungstabellentest (Decision Table Testing)
Bedingungstest (Branch Condition Testing)
Mehrfachbedingungstest (Branch Condition Combinatoin Testing)
Modifizierter Bedingungs-/Entscheidungstest (Modified Condition Decision Coverage (MCDC) Testing)
Datenflusstest (Data Flow Testing)
Was ist ein Beispiel für erfahrungsbasierte Testverfahren?
intuitive Testfallermittlung (Error Guessing)
Was ist die Äquivalenzklassenbildung?
Ein Black-Box-Testverfahren, bei dem die Testfälle im Hinblick auf die Ausführung von Äquivalenzklassen entworfen werden, wobei von jeder Äquivalenzklasse ein Repräsentant genutzt wird.
Was ist die Grundidee bei der Äquivalenzklassenbildung?
Wertebereiche der Ein-/Ausgaben in Äquivalnzklassen (ÄK) teilen
Alle Werte einer Klasse zeigen äquivalentes Verhalten des Testobjekts
Wie ist die Vorgehensweise bei der Äquivalenzklassenbildung?
Aufstellen der Wertebereich aus der Spezifikation (Ein- und Ausgaben!)
Äquivalenzklassenbildung für jede weitere Beschränkung
Falls eine Beschränkung einen Wertebereich spezifiziert => eine gültige und zwei ungültige ÄK
Falls eine Beschränkung eine minimale und maximale Anzahl von Werten spezifiziert => eine gültige und zwei ungültige ÄK
Falls eine Beschränkung eine Menge von Werten spezifiziert, die möglicherweise unterschiedlich behandelt werden => für jeden Wert dieser Menge eine gültige ÄK und zusätzlich ingesamt eine ungültige ÄK
Falls eine Beschränkung eine Situation spezifiziert, die ziwngend erfüllt sein müss => eine gültige und eine ungültige ÄK
Werden Werte einer ÄK vermutlich nicht gleichwertig behandelt => Aufspaltung der ÄK in kleinere ÄK
Was sollte man bei der Äquivalenzklassenbildung beachten?
Fehlermaskierung durch die Benutzung von mehreren Repräsentanten durch ungültige Äquivalenzklassen.
Was sind die Vor- und Nachteile ovn Äquivalenzklassenbildung?
Vorteile:
* Anzahl der Testfälle kleiner als bei unsystematischer Fehlersuche
* Geeignet für Programme mit vielen verschiedenen Ein- und Ausgabedingunen
Nachteile:
* Betrachtet Bedingungen für einzelne Ein- und Ausgabeparameter
* Beachtung von Wechselwirkungen und Abhängigkeiten von Bedingungen sehr aufwändig
Empfehlung:
* Zur Auswahl wirkungsvoller Testdaten: Kombination der ÄK-Bildung mit fehlerorientierten Verfahren, z. B. Grenzwertanalyse
Was ist die Grenzwertanalyse?
Ein Black-Box-Testverfahren, bei dem die Testfälle unter Nutzung von Grenzwerten entworfen werden.
Was sind die Vor- und Nachteile der Grenzwertanalyse?
Was sind die Ziele des zustandsbasierten Tests?
• Nachweis, dass sich das Testobjekt konform zum Zustandsdiagramm verhält (Zustands-Konformanztest) • Zusätzlich Test unter nicht-konformanten Benutzungen (Zustands-Robustheitstest)
Was ist der Entscheidungstabellentest?
Ein Black-Box-Testverfahren, bei dem Testfälle im Hinblick auf die Ausführung von Kombinationen der Bedingungen einer Entscheidungstabelle entworfen werden.
Welches ist der wesentliche Unterschied zwischen dynamischen und statischen Tests?
Welche grundlegenden Funktionen und Eigenschaften muss ein Testrahmen haben?
Welches ist der wesentliche Unterschied zwischen Black-Box- Testverfahren und White-Box-Testverfahren zur Testfallermittlung?
Worauf basieren funktionale Tests?
Was versteht man unter der Äquivalenzklassenbildung?
Wann ist die Grenzwertanalyse einsetzbar?
Wann ist der zustandsbasierte Test einsetzbar?
Wie ist eine Entscheidungstabelle aufgebaut?
Wann ist der anwendungsfallbasierte Test einsetzbar?
Welche weiteren Black-Box-Testverfahren gibt es noch?
Last changed6 years ago