Mit Testen unterstützen Sie das Ziel, die korrekte Funktion der IT-Lösung in Ihrem Unternehmen sicherzustellen. Tipps zu Testplanung, Testmanagement, Testdurchführung sowie Testbedarf mit Standard-Software.

Wie vorgehen?

Planung, Spezfikation, Programmierung, Durchführung

Die Erstellung von automatischen Tests ist optional und nur dann sinnvoll, wenn die Tests oft ausgeführt werden müssen (siehe Testautomatisierung).

Testmethodik

Test-Methoden

Die wesentlichen Anforderungen (Must-have) sollten unbedingt strukturiert getestet werden.

In der Praxis bewährt sich eine Kombination von strukturiertem und explorativem Testen.

Strukturiertes Testen

Die Anwendungsfunktionalität wird durch Ausführung von Test Cases, welche den Ablauf genau definieren, überprüft.

Nicht-funktionale Anforderungen (z.B. gelieferte Dokumentation) können mit folgenden Methoden geprüft werden:

  • Inspektion: sehr formale Prüfung
  • Walkthrough: Prüfung im Rahmen einer Sitzung, weniger formal als eine Inspektion
  • Review: Die Tester prüfen eigenständig und geben Feedback
Ablauf einer Inspektion: Planung, Übersicht, Fehlersuche, Fehlersammlung, Korrektur, Nachkontrolle, Reflexion

Exploratives Testen

Das explorative oder auch „freie“ Testen hilft, Fehler und Schwächen der Software abseits der definierten Testfälle zu finden.

Damit steigt jedoch auch die Gefahr, dass die Tester die Lösung nicht „wie vorgesehen“ verwenden. D.h. es werden ggf. Dinge bemängelt, die so gar nie gefordert waren. Daher sollten alle gefunden Abweichungen geprüft werden, ob dafür auch eine Anforderung vorliegt. Falls nicht, muss die weitere Vorgangsweise zur Abweichung zw. Auftraggeber und Auftragnehmer abgestimmt werden.

Muss man Standard-Software auch testen?

Sie können zu Recht erwarten, dass die Hersteller ihre Software testen.

Es bleibt jedoch die Frage offen, ob Sie damit Ihre gesamte IT-Lösung abgedeckt ist:

  • Ja z.B. beim Einsatz eines neuen Standard-Office-Pakets (z.B. Microsoft Office, LibreOffice)
    • Die Integration dieser Software mit anderen Systemen (z.B. Active Directory, Windows) ist typischerweise auch Standard und wird vom Hersteller getestet.
  • Nein z.B. bei der Implementierung einer ERP Standard-Software
    • ERP Systeme werden oft mit anderen IT-Systemen integriert, welche nicht vom selben Hersteller kommen. Damit muss die Interaktion der verbundenen Systeme (Schnittstellen) getestet werden.

Damit sind bei der Implementierung von Standard-Software folgende Bereiche zu testen:

  • Individuelle Anpassung der Standard-Software (Konfiguration)
  • Implementierung von Schnittstellen zu anderen Systemen
  • Dokumentation der Implementierung in der spezifischen IT-Umgebung
  • Trainingsunterlagen mit Bezug auf spezifische betriebliche Abläufe

Testplanung und Testmanagement

Testmanagement: Testplan und Test Cases erstellen, Durchführung planen, Testen, Fehler korrigieren und Tests wiederholen

Testplan

Im Testplan definieren Sie, wie der Test durchgeführt werden soll und wann der Test erfolgreich abgeschlossen ist.

Inhalte sind in Anlehnung an IEEE 730:

  • Einleitung
    • Zweck und Anwendungsbereich des Systems
    • Referenzierte Dokumente
  • Ziele und Nicht-Ziele für den Test
  • Eingesetzte Standards, Verfahren, Konventionen, Metriken
    • Häufigkeit der Testdurchführung
    • Automatisierung von Tests
  • Testinhalt
    • Testbereich (Scope)
    • Grobe Liste der durchzuführenden Tests
  • Problemmelde- und Korrekturverfahren
  • Eingesetzte Werkzeuge, Techniken und Methoden
    • Testmethodik
    • Testmanagement-Tool
    • Tools zur Test-Automatisierung
  • Dokumentation, Medien
    • Vorgaben zur Test-Dokumentation
    • Verwaltung der Medien und Datenträger (Testdaten, Testobjekte etc.)
  • Test-Organisation und Test-Team (sofern nicht bereits im Projektplan geregelt)
    • Verantwortung für Test-Management und Issue-Management
    • Eingebundene Mitarbeiter für Testspezifikation und Testdurchführung
    • Trainingsmaßnahmen
  • Issue Management
    • Vorgaben zur Verwaltung von bei der Testdurchführung gefundenen Abweichungen
    • Lieferanten-Management
  • Risikomanagement
  • Weiteres
    • Glossar
    • Änderungsverfahren und Änderungsverzeichnis (Dokumenthistorie)

Diese Vorlage konkretisiert die Inhalte:

Download “Testplan Vorlage” Testplan-Vorlage.docx – 243,83 kB

Test Cases (Testfälle)

Ein Test Case wird zur strukturierten Prüfung der IT-Lösung verwendet.

Vorgangsweise zum Erstellen von Test Cases:

  1. Erstellen Sie eine Liste von Testbedingungen (Ideensammlung)
  2. Selektieren Sie die Testbedingungen anhand der definierten Testziele (Testplan)
  3. Erstellen Sie pro ausgewählter Testbedingung ein oder mehrere Test Cases, damit die Testbedingung komplett abgedeckt ist.

Testbedingungen und Test Cases sollten in kritisch oder nicht kritisch eingeteilt werden. Für kritische Test Cases würden Fehler den produktiven Einsatz des Systems verhindern.

Beispiel für Test Case

Download “Test Case Vorlage” Test-Case-Template-deutsch.xlsx – 10,65 kB

Test-Management Tools

Die Verwaltung von Testplänen, Testfällen und Testergebnissen kann mit Office-Tools (Excel, Word u.ä.) erfolgen und das reicht für ein Implementierungsprojekt in der Regel.

Für einen besseren Überblick und die einfachere Auswertbarkeit des Teststatus empfiehlt sich der Einsatz eines Test-Management-Tools. Die Auswahl an Tools ist groß und meistens handelt es sich dabei um integrierte Lösungen für Requirements und Test Management. Es gibt auch eine Reihe von Open-Source-Tools. Sollten Sie bereits eine Software für Requirement Engineering bzw. Qualitätssicherung im Einsatz haben, so prüfen Sie die Möglichkeiten für Test Management damit.

Bekannte kommerzielle Tools sind z.B.

Aktuell verfügbare Tools finden Sie am besten mit einer Internet-Recherche mit dem Suchbegriff „Test Management Tools“.

Test-Automatisierung

Wenn Sie Tests oft durchführen müssen, dann sollten Sie über Test-Automatisierung nachdenken:

  • Häufige Software-Updates: Kritische Tests, welche nach der Installation eines jeden Updates durchgeführt werden müssen
  • Kritische IT-Services: Tests, welche die Funktion, Verfügbarkeit und Geschwindigkeit einer Anwendung im Betrieb regelmäßig überprüfen
  • Continuos Integration / Continuos Delivery (CI/CD): Tests bei jedem Commit in der Softwareentwicklung

Eine Automatisierung aller Testfälle ist in der Praxis nicht zielführend, da die Implementierung zu aufwändig und damit zu teuer wird. Eine Testkampagne besteht damit aus automatisierten Tests und manuellen Tests.

Die Erstellung von automatischen Tests ist meistens ein Softwareentwicklungsprojekt, da die codeless Test-Tools (z.B. Katalon Studio, Selenium-IDE) oft nicht ausreichen.

Aufwand:

  • Der Aufwand zur Erstellung von automatisierten Tests ist je nach eingesetzten Tools, Umfang und Fähigkeiten mehrere Personen-Tage oder Wochen.
  • Automatisierte Tests müssen laufend adaptiert werden, denn Änderungen an der Anwendung oder der IT-Umgebung können eine Anpassung der Tests erforderlich machen.
  • Für die eingesetzten Test-Tools können Kosten anfallen.

Bekannte Tools für die Testautomatisierung sind z.B.:

Testdurchführung

Die manuelle Testdurchführung erfolgt am besten durch die Key-User. Dafür benötigen diese vorher ggf. eine Schulung für die neue IT-Lösung.

Bei der Testdurchführung protokollieren Sie zu jedem Test Case:

  • Datum der Durchführung
  • Name des Testers
  • Ergebnis der Testdurchführung
    • erfolgreich: kein Fehler
    • erfolgreich mit Vorbehalt: nur leichte Fehler
    • nicht erfolgreich: schwere Fehler, Anzahl der Fehler ist zu hoch
  • Entdeckte Fehler
    • werden in einer Fehlerliste erfasst
    • Fehlerliste wird an Lieferanten bzw. Verantwortlichen weitergeleitet

Nutzen Sie eine Übersichtsliste mit allen Test Cases, um den Status der Test Cases überblicken zu können.

Meistens sind mehrere Testdurchläufe (Testwiederholungen) notwendig, bis alle Test Cases mit „erfolgreich“ oder „erfolgreich mit Vorbehalt“ abgeschlossen sind.

Testwiederholung (Regressionstest)

Alle zuletzt nicht erfolgreichen Test Cases müssen wiederholt werden.

Auch alle kritischen Test Cases sollten wiederholt werden (auch wenn diese vorher erfolgreich waren). Es könnten zwischenzeitlich neue Fehler eingebaut worden sein.

Testbetrieb

Wenn möglich, sollte vor der Produktivnahme einer neuen IT-Lösung ein Test- bzw. Probebetrieb durchgeführt werden.

Darunter versteht man den Betrieb unter realen Bedingungen, aber in kleinem Umfang. Beispielsweise könnte nur eine Abteilung die neue IT-Lösung im Testbetrieb nutzen.

Abschluss der Testphase

Die Testphase sollten Sie nicht beenden, solange noch kritische Fehler offen sind.

Wenn nach Abschluss der letzten Testrunde nur noch unkritische Fehler offen sind, dann können Sie die Testphase beenden.

Bei der Abnahme sollten Sie festlegen, bis wann diese Fehler zu beheben sind bzw. ob Sie auf die Behebung mancher Fehler verzichten.

Weitere Informationen

Die Websites der ISTQB sowie deren Landesorganisationen (Testing Boards) bieten weitere Informationen:

Ihr Kommentar