Konzept: Abnahmetests
Abnahmetests sind ein Typ von Test, mit dem geprüft wird, ob die Software bereit ist und von den Benutzern verwendet werden kann, um die Funktionen und Aufgaben auszuführen, für die die Software entwickelt wurde.
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Abnahmetests sind die letzte Testaktion, bevor die Software implementiert wird. Mit Abnahmetests wird geprüft, ob die Software bereit ist und von den Benutzern verwendet werden kann, um die Funktionen und Aufgaben auszuführen, für die die Software entwickelt wurde. Für die Implementierung eines Abnahmetests gibt es drei gebräuchliche Strategien. Dies sind im Einzelnen:

Die ausgewählte Strategie basiert häufig auf den vertragsbedingten Anforderungen, den organisationsabhängigen und unternehmensweiten Standards und der Anwendungsdomäne.

Formale Abnahmetests

Formale Abnahmetests sind ein verwaltungsintensiver Prozess und häufig eine Erweiterung des Systemtests. Die Tests werden sorgfältig und ebenso detailliert wie Systemtests geplant und ausgearbeitet. Die ausgewählten Testfälle sollten immer eine Untergruppe der Testfälle sein, die während des Systemtests durchgeführt werden. Es von entscheidender Bedeutung, in keiner Weise von den ausgewählten Testfällen abzuweichen. In vielen Organisationen erfolgen die formalen Abnahmetests voll automatisiert.

Die Aufgaben und Arbeitsergebnisse sind dieselben wie bei Systemtests. In einigen Organisationen wird der Abnahmetest von der Entwicklungsorganisation (bzw. der zugehörigen unabhängigen Testgruppe) zusammen mit Stellvertretern der Endbenutzerorganisation durchgeführt. In anderen Organisationen werden die Abnahmetests allein von der Endbenutzerorganisation bzw. einer Zielgruppe von Personen durchgeführt, die von der Endbenutzerorganisation ausgewählt wird.

Vorteile dieser Art von Tests:

  • Die zu testenden Funktionen und Features sind bekannt.
  • Die Testdetails sind bekannt und können gemessen werden.
  • Die Tests können automatisiert werden und lassen somit Regressionstests zu.
  • Der Fortschritt der Tests kann gemessen und überwacht werden.
  • Die Abnahmekriterien sind bekannt.

Nachteile:

  • Die Tests setzen einen beträchtlichen Ressourcenvorrat und viel Planung voraus.
  • Die Tests können eine erneute Implementierung von Systemtests sein.
  • Die Tests erkennen möglicherweise keine subjektiven Mängel in der Software, weil Sie nur nach den Mängeln suchen, die Sie auch erwarten zu finden.

Formlose Abnahmetests

Bei formlosen Abnahmetests sind die Testverfahren nicht streng definiert, wie es bei den formalen Abnahmetests der Fall ist. Die zu überprüfenden Funktionen und Geschäftsaktivitäten werden identifiziert und dokumentiert, aber die Tests müssen nicht nach bestimmten Testfällen durchgeführt werden. Der jeweilige Tester bestimmt, wie er bei dem Test vorgeht. Diese Methode für die Durchführung von Abnahmetests ist nicht so kontrolliert wie die formalen Abnahmetests und geht damit eher auf die subjektive Komponente ein.

Formlose Abnahmetests werden am häufigsten von der Endbenutzerorganisation durchgeführt.

Vorteile dieser Art von Tests:

  • Die zu testenden Funktionen und Features sind bekannt.
  • Der Fortschritt der Tests kann gemessen und überwacht werden.
  • Die Abnahmekriterien sind bekannt.
  • Es können mehr subjektive Mängel festgestellt werden, als dies bei den formalen Abnahmetests möglich ist.

Nachteile:

  • Diese Tests setzen Ressourcen, Planung und Verwaltungsressourcen voraus.
  • Sie haben keine Steuerung darüber, welche Testfälle verwendet werden.
  • Benutzer können sich an die Funktionsweise des Systems anpassen und deswegen keine Mängel feststellen.
  • Benutzer können sich das Hauptaugenmerk darauf richten, das neue System mit einem herkömmlichen System zu vergleichen, anstatt nach Mängeln zu suchen.
  • Die Ressourcen für die Abnahmetests stehen nicht unter der Kontrolle des Projekts und könnten nicht ausreichend sein.

Betatests

Betatests sind die letzte der drei Abnahmeteststrategien und unterliegen der geringsten Kontrolle. Bei Betatests liegen die Details, die Daten und der Testansatz allein in der Hand des jeweiligen Testers. Jeder Tester muss seine eigene Umgebung einrichten, seine eigenen Daten auswählen und die Funktionen, Features und Aufgaben bestimmen, die er überprüfen möchte. Außerdem muss er seine eigenen Kriterien dafür festlegen, ob das System in seinem aktuellen Zustand akzeptiert wird oder nicht.

Betatests werden von Benutzern implementiert, häufig mit nur wenig oder gar keiner Verwaltung durch die Entwicklungsorganisation (oder einer anderen Organisation, die keine Endbenutzer stellt). Betatests sind die subjektivste der drei Abnahmeteststrategien.

Vorteile dieser Art von Tests:

  • Die Tests werden von Benutzern implementiert.
  • Der Umfangs potenzieller Testressourcen ist sehr groß.
  • Sie erhöhen die Zufriedenheit der Kunden, die an den Tests teilnehmen.
  • Es können mehr subjektive Mängel festgestellt werden, als dies bei den formalen Abnahmetests möglich ist.

Nachteile:

  • Es werden möglicherweise nicht alle Funktionen und Features getestet.
  • Der Testfortschritt lässt sich nur schwer messen.
  • Benutzer können sich an die Funktionsweise des Systems anpassen und deswegen keine Mängel feststellen oder berichten.
  • Benutzer können sich das Hauptaugenmerk darauf richten, das neue System mit einem herkömmlichen System zu vergleichen, anstatt nach Mängeln zu suchen.
  • Die Ressourcen für die Abnahmetests stehen nicht unter der Kontrolle des Projekts und könnten nicht ausreichend sein.
  • Die Abnahmekriterien sind nicht bekannt.
  • Für die Verwaltung der Betatester müssen mehr unterstützende Ressourcen bereitgestellt werden.