Funktionale Testmethode

aus www.iwiki.de, der freien Wissensdatenbank

Eine Funktionale Testmethode deckt Fehler in einem Programm auf. Dazu wird die Erfüllung der fachlichen Anforderungen überprüft. Die Testmethode besteht aus der Herleitung von Testfällen und deren Durchführung. Hierbei wird das Programm ohne Kenntnis des internen Aufbaus (Black-Box) in einer realen Umgebung ausgeführt.

Inhaltsverzeichnis

Äquivalenzklassen - Methode

Die Grundidee der Äquivalenzklassen-Methode ist die Herleitung von Testfällen aus den spezifizierten Ein-/Ausgabebereichen (Maskenfelder, Parameterschnittstellen,...) eines Programms. Hierzu werden zunächst Bedingungen aufgestellt, die an Ein-/Ausgabebereiche zu stellen sind.

Im nächsten Schritt werden aus diesen Bedingungen Äquivalenzklassen abgeleitet. Eine Äquivalenzklasse ist eine Menge von Eingabekombinationen, die eine bestimmte Ein-/ oder Ausgabebedingung erfüllen.

Im letzten Schritt werden nun aus diesen Testfällen Äquivalenzklassen hergeleitet.

Grenzwertanalyse

Mit Hilfe der Grenzwertanalyse werden Testfälle hergeleitet, die besonders große und besonders kleine Werte (Grenzwerte) beinhalten. Bei Tests mit Grenzwerten ist die Wahrscheinlichkeit Fehler aufzufinden größer als bei Tests mit Normalwerten.

Ursache - Wirkungsgraph

Eine Herleitung von Testfällen mit Hilfe der Ursache - Wirkungsgraphen kann in folgenden Schritten erfolgen:

Schritt 1: Festlegung von Ursachen und Wirkungen

Hierbei sind Ursachen die Wahrheitswerte "Wahr" oder "Falsch". Diese werden ermittelt durch die Auswertung von Übergabeparametern oder eingegebenen Werten. Wirkungen sind beispielsweise Änderungen von Ausgabewerten oder Fehlermeldungen.

Schritt 2: Aufstellung eines Ursache-Wirkungsgraphen

Nachdem Ursachen und Wirkungen festgelegt wurden, wird ermittelt welche Kombinationen von Ursachen die festgelegten Wirkungen erzielen. Hierbei werden die Ursachen mit logischen AusdrĂĽcken verknĂĽpft. Diese logischen AusdrĂĽcke sind:

Name Bedeutung Zeichen
Identität gleich Bild:SQM_Gleich.jpg
Verneinung ungleich Bild:SQM_Verneinung.jpg
Disjunktion oder Bild:SQM_Oder.jpg
Konjunktion und Bild:SQM_Und.jpg

Schritt 3: Überarbeitung des Graphen unter Berücksichtigung von Einschränkungen

Im nächsten Schritt werden Einschränkungen zwischen den Ursachen mit eingebaut. Die wichtigsten Einschränkungen sind die Exklusivität (e: höchstens eine Ursache kann zutreffen) und die Inklusivität (i: mindestens eine Ursache muss zutreffen).

Beispiel eines Ursache-Wirkungsgraphen
Beispiel eines Ursache-Wirkungsgraphen

Schritt 4: Ableitung einer Entscheidungstabelle

Aus dem Graphen wird einen Entscheidungstabelle abgeleitet, indem man zunächst eine Wirkung auswählt die den Wert „Wahr“ hat.

Anschließend bestimmt man durch Zurückverfolgung im Graphen alle Kombinationen von Ursachen, die diese Wirkung auf „Wahr“ setzen.

Daraufhin bildet man fĂĽr jede Ursachenkombination eine Entscheidungsregel.

Abschließend bestimmt man für jede Ursachenkombination die Zustände aller anderen Wirkungen und trägt sie in die Tabellenspalten ein.

Schritt 5: Herleitung von Testfällen

Jede Spalte der Entscheidungstabelle ergibt nun einen Testfall.

Zustandsbasierter Test

Mit Hilfe des zustandsbasierter Tests werden Testfälle methodisch hergeleitet. Hierbei wird berücksichtigt, dass das Verhalten der Software von einem Vorzustand abhängig ist. Um diese Zustände einer Software anschaulich darzustellen verwendet man entweder ein Zustands – Transitionsdiagramm oder eine Zustands-Übergangstabelle. Hieraus werden dann die Testfälle ermittelt.

Schnittstellenanalyse

Eine Schnittstellenanalyse ermittelt die Abhängigkeit von Programmtechnischen Einheiten. Hierbei wird für die einzelnen Programmteile überprüft von welche Programmteilen verwendete Parameter erhalten werden und welche Programmteile die ausgegebenen Parameter verwenden.

Festlegung der zu testenden Programmeinheiten

Es wird ermittelt welche Programmeinheiten wichtig sind und in den Test einbezogen werden sollten.

Bestimmung von Ein- und Ausgabedaten der Programmteile

Es werden fĂĽr jede Programmeinheit Ein- und Ausgabeparameter ermittelt.

Aufstellung einer Abhängigkeitstabelle

Eine Tabelle stellt alle programmeinheiten nebeneinander dar. Die Zeilen stehen fĂĽr die Parameter ein A bedeut Ausgabeparameter, ein E Eingabeparameter. Ist das Feld leer verwendet der Programmteil diesen Parameter nicht.

Datenelement P1 P2 P3 P4 P5 P6
a A E
b A E
c A E
d A E
e A E
f A E

Ableitung eines Testgraphen

Beispiel eines Testgraphen
vergrößern
Beispiel eines Testgraphen

In der Spalte mit dem ersten Programmteil werden aller Felder mit einem A gesucht. In den entsprechenden Zeilen wird nun jeweils nach einem E gesucht. Im Graphen werden nun zu allen Programmteilen mit einem E Verbindungslinien gezogen. Dies wird jeweils so lange durchgefĂĽhrt, bis ein Programmteil erreicht ist der keine Ausgabeparameter hat oder deren Ausgabeparameter nicht mehr von einem anderen verwendet werden. Programmteile werden in jedem Pfad jeweils einzeln dargestellt.

Herleitung von Testpfaden

Es wird nach so vielen Graphen gesucht, wie nötig sind, damit jede Anweisung im Graphen mindestens einmal ausgeführt wird.

Zusammenfassung

Die Funktionale Testmethode ist genauso wie die Dynamische Testmethode eine Art von Software-Test. Sie beinhaltet die Äquivalenzklassen - Methode, die Grenzwertanalyse, den Ursache - Wirkungsgraph, den Zustandsbasierten Test und die Schnittstellenanalyse.

Literatur

  • Prof. Dr. Spielmann: Software Qualitätsmanagement. Stand: September 2005. Kapitel: Funktionale Testmethoden (FUN). S. 1-55. Fachhochschule WĂĽrzburg - Schweinfurt, Studiengang Wirtschaftsinformatik, Vorlesungsunterlagen

Weblinks