SAP Testmanagement
Das einwandfreie Funktionieren der IT gehört zu den grundlegenden Erfolgsfaktoren jedes Unternehmens und dennoch haben viele kein systematisches Testmanagement etabliert. Dieses ist allerdings notwendig, wenn Ausfälle vermieden und Workflows optimal ablaufen sollen. SAP stellt zahlreiche Features zur Verfügung, mit denen die Möglichkeiten des Testmanagement effizient und einfach genutzt werden können.
Entwicklung und Definition des Testmanagement
Softwaretests werden bereits seit rund 50 Jahren durchgeführt. Bedingt durch die schnelle Entwicklung der IT-Technologie gewannen sie sowohl in hohem Maß an Umfang als auch an Komplexität. Aufgrund der permanenten Veränderungen und Optimierung von Geschäftsprozessen gehört das Testen mittlerweile zum Linienbetrieb.
Ziel des Testings ist es, Funktionalität und Qualität einer Software sicherzustellen. Ein reibungsloser Produktivbetrieb soll gewährleistet und Probleme präventiv vermieden werden. Oft werden Bugs und andere technische Probleme erst durch die systematische Fehlersuche in einem Testprozess sichtbar.
Das SAP Testmanagement umfasst alle Aktivitäten zur Planung, methodischen Durchführung und Überwachung der dafür notwendigen Testaktivitäten. Das Ziel des SAP Testmanagements ist es zu einer zentralen Anlaufstelle für Testaktivitäten zu gelangen.
Durch seine integrierten Test-Funktionalitäten bietet der SAP Solution Manager umfangreiche Möglichkeiten, Kosten und Risiken bei der Wartung von SAP Lösungen einzuschätzen und zu minimieren.
Testen mit dem SAP Solution Manager
Der SAP Solution Manager bietet als ausgereifte Software ein großes Potenzial für Unternehmen. Das Anwendungsspektrum ist durch seinen modularen Aufbau sehr vielfältig und individuell anpassbar. Durch die integrierten Test-Funktionalitäten bietet der Solution Manager umfangreiche Möglichkeiten sowohl Kosten als auch Risiken bei der Wartung von SAP Lösungen einzuschätzen und zu minimieren.
Das Testen mit dem SAP Solution Manager lässt sich dabei als Testen innerhalb von Projekten und im Linienbetrieb unterscheiden.
Wird das Testmanagement innerhalb eines Projektes eingeführt, müssen zuvor einige maßgebliche Einflussfaktoren bedacht werden. Dazu gehört, die Bedeutung sowie Größe des Projekts und welche Aufmerksamkeit das Projekt im Unternehmen erhält. Diese Einflussfaktoren entscheiden über das Erfordernis eines zentralen Testmanagements.
Außerhalb oder auch nach Projektende wird das SAP-System durchgängig optimiert. Systemveränderungen müssen ausgiebig getestet werden, da sich Geschäftsprozesse permanent ändern verändern und erweitern. Dies ist besonders wichtig, um den reibungslosen Ablauf geschäftskritischer Prozesse zu gewährleisten.
Die Veränderungen im System können nach unterschiedlichen Auslösern differenziert werden:
- geschäftsprozessgetriebene Veränderungen
- IT-getriebene Veränderungen
Dabei ist der Testprozess ist in 6 Schritte unterteilt.
Schritt 1: Identifizierung des Testumfangs
Am Anfang jedes Testings steht die Definition des Testumfangs. Dabei wird entschieden, welche Geschäftsprozesse in welcher Tiefe und Ausprägung getestet werden sollen. Die Identifizierung des Testumfangs ist deswegen so wichtig, weil sie zum Beispiel über die Wiederverwendbarkeit von Testfällen entscheidet.
Schritt 2: Testplanung und System-Setup
In diesem Schritt wird ein Testplan aufgestellt. Dafür ist es notwendig die Geschäftsprozesse bis auf Prozessschrittebene im System herunterzubrechen. Testprozesse werden dann anhand von Transaktionen, Reports usw. für einen Testlauf erstellt und mit der Dokumentation ergänzt. Ebenso werden in diesem Schritt Tester den einzelnen Testpaketen zugeordnet.
Schritt 3: Manuelle Testausführung
Nach Definition der zu testenden Prozesse und initialer Anlage der Prozesslandschaft im Solution Manager können die Tester die vorab zugewiesenen Testschritte aus dem Arbeitsvorrat direkt im System ausführen.
Schritt 4: Automatisierung im Testmanagement
Sind die zu testenden Prozesse klar definiert und die Wiederverwendbarkeit der Testfälle gewährleistet, ist es empfehlenswert, sich mit dem Thema Testautomatisierung auseinanderzusetzen. Das Ziel dabei ist es, eine höhere Softwarequalität durch eine größere Testabdeckung zu erreichen.
Schritt 5: Implementierung der Änderungen
Die zuvor durchgeführten Änderungen werden nun in das Testmanagement eingefügt, um somit nachhaltig ein automatisches Testing zu etablieren.
Schritt 6: Dokumentation und Reporting
Die Ergebnisse werden sowohl während als auch nach dem Testing dokumentiert. Ebenso wird ein Reporting ausgegeben, das anhand unterschiedlicher Statistiken und Kennzahlen eine Übersicht über ausgewählte oder auch alle Testpläne liefert.
Testmanagement Tools
Der Testimporter unterstützt als Testmanagement Tool dabei, eine komplette Testlandschaft mit wenig Zeitaufwand anzulegen. Mit wenigen Klicks lässt sich eine komplette Testlandschaft im Solution Manager angelegt. Zeitintensive und fehleranfällige manuelle Vorbereitungen werden damit überflüssig.
Die Funktionen des Testimporters sind dabei umfangreich. Dazu gehört unter anderem:
- Die Anlage des Projektes im Solution Manager inklusive Zuweisung benötigter Systemrollen und logischer Komponenten
- Generierung der Business Blueprint Struktur und eines Testplans mit Testpaketen
- Verknüpfung der Business Szenarios mit abgelegter Testfallenbeschreibung usw.
Daraus ergeben sich viele Vorteile, wie zum Beispiel:
- Zeitersparnis
- Qualitätssicherung
- Übersichtlichkeit
- Modularität
Mithilfe des Testimporters ist es leicht, ein automatisiertes Testmanagement durchzuführen und somit Zeit und Kosten zu sparen.
Testdaten
Der Großteil der Testdaten wird gewöhnlich in eCATT getrennt von den Testskripten in Testdatencontainern gespeichert. Dies geschieht vor allem aus Gründen der Wiederverwendbarkeit und Wartbarkeit. In einer Testkonfiguration werden die Testdatencontainer und ein Testskript zusammengeführt, um einen ausführbaren Testfall anzulegen.
Die einfachste Verwendung von Testdatencontainern ist das getrennte Anlegen von jeweils einen Container für jedes Testskript. Damit ist es allerdings nicht möglich, die zahlreichen Vorteile der Wiederverwendung zu nutzen. Wenn ein einzelner Testdatencontainer für eine vollständige Anwendung oder Subapplikation angelegt wird, können Testdaten effektiver genutzt werden. Durch das Speichern aller Testdaten in einem Container wird es leichter, Daten konsistent zu halten. Im Gegensatz zu der Verwendung eines einzelnen Testdatencontainers für alle Parameter können die Parameter auf unterschiedliche Testdatencontainer verteilen werden. Wenn Sie beispielsweise eine große Anzahl von Skripten mit vielen Parametern haben, sieht es vielleicht so aus, dass die Verwendung von einzelnen Testdatencontainern nicht mehr eine praktische Lösung ist. Allerdings können Sie in diesem Fall die Parameter in logische Gruppen unterteilen, jede davon in ihren eigenen Testdatencontainer.
Bei manchen Datenübernahmeobjekten besteht die Möglichkeit, aus Daten, die im SAP-System bereits vorhanden sind, eine Datenübernahmedatei zu Testzwecken zu erzeugen. Dies gelingt allerdings unter der Voraussetzung, dass bereits Daten des betreffenden Übernahmeobjekts vorhanden sind wie z.B. Verkaufsbelege. Generell ist die Generierung von Testdaten nur bei folgenden Datenübernahmeobjekten möglich:
- Sachkontenstämme I
- Materialstämme
- Verkaufsbelege
- Arbeitspläne
- Personalplanung
Testautomatisierung
In die SAP Solution Manager-Systemlandschaft ist das Testautomatisierungs-Framework integriert. Es stellt u.a. Funktionen bereit, mit denen Sie Testkonfigurationen und Testskripte für automatisierte Tests, Testdatencontainer und Systemdaten-Container anlegen können.
- Testvorbereitung
- In der Anwendung Test-Suite – Testvorbereitung richten Sie zunächst automatisierte Tests ein. Weitere Informationen finden Sie unter Lösungsdokumentation: Anlegen von Testfällen.
- Der entsprechende Systemdatencontainer automatisch angelegt oder mit der relevanten logischen Komponentengruppe aktualisiert, wenn Sie die Landschaft Ihrer Lösung definieren.
- Sie können auf der Benutzungsoberfläche der SUT-Verwaltung (SUT = System unter Test) die Informationen zum Systemdaten-Container (SDC) erweitern, die automatisch aus der Lösungsdokumentation abgerufen worden sind. Abhängig von logischer Komponente und Systemrolle werden die RFC-Destinationen beim Ausführen von Testfällen automatisch abgeleitet.
- Legen Sie beim Anlegen eines Testdatencontainers Parameter an. Plausibilitätsprüfungen für Parameter werden vom Testautomatisierungs-Framework auch dann unterstützt, wenn die entsprechenden Datenelemente nicht in SAP Solution Manager, sondern nur im Zielsystem verwendet werden.
- Die Schnittstelle der Transaktionen oder Funktionsbausteine wird bei der Bearbeitung des Contents eines eCATT-Testskripts automatisch aus der SAP-Solution-Manager-Systemlandschaft importiert und angezeigt, allerdings nur, wenn dem Testfall ein Systemdaten-Container zugeordnet ist.
- Testplanverwaltung:
- Ordnen Sie dem Testplan die Systemrolle zu. Die RFC-Destinationen werden bei der Ausführung der Testfälle automatisch abgeleitet.
Häufige Fehler beim SAP Testmanagement
Beim Einsatz des Testmanagement werden typische Fehler gemacht, die regelmäßig auftreten. Dazu zählen insbesondere:
- Kein oder unstrukturiertes Testmanagement
- Ein zu großer Testumfang
- Fehlende Ergebnisdokumentation
- Ausschließlich automatisiertes Testen
- Eine schlechte Testvorbereitung
Damit diese Fehler nicht auftreten, sollte überprüft werden, ob die Testumgebung repräsentativ sowie stabil ist und ob die Testdaten vollständig sind.
Nützliche Ressourcen
Die SAP hat ein sehr praktisches Wiki mit vielen Links auf SAP Ressourcen für das Thema Test Suite und Testmanagement mit dem Solution Manager: Link zum Wiki
Dort findet man auch Informationen über die Deltas zwischen den Support-Package-Stacks des Solution Managers und den Änderungen, die sich für die Test Suite ergeben. Die Folien haben am Ende auch noch mal eine Learning Map mit den jeweils aktuellen Links auf den SAP Learning Hub und weitere Online Ressourcen.
Wenn Sie Ihre Fragen interaktiv los werden wollen, ohne gleich ein Projekt starten zu müssen: nutzen Sie die Möglichkeit eine Expert Session zu buchen.
Fazit und Ausblick
Um eine hohe Qualität der eigenen Software im Unternehmen zu gewährleisten, ist ein ausgereiftes Testprogramm unabdingbar. Mithilfe von intelligenter Automatisierung und dem Einsatz von Tools, wie zum Beispiel dem Testimporter, lässt sich der Zeit- und Kostenaufwand auf ein akzeptables Maß reduzieren. Denn eines steht fest: Testing ist niemals optional.
Auch wenn die von SAP bereitgestellten Tools Optimierungspotential lassen, sollte niemals auf Testing verzichtet werden. Denn die Folgekosten durch ein unsystematisches oder fehlendes Testing übersteigen schnell die Kosten, die für ein optimales Testen einkalkuliert werden müssen. Nachdem sich das Testing in den letzten Jahren rasant entwickelt hat, bleibt die weitere Entwicklung abzuwarten. Allerdings ist auch in Zukunft mit einer weiteren Verbesserung in Bezug auf Effizienz und Komfort zu rechnen.
FAQ SAP Testmanagement
Was ist das SAP Testmanagement?
Das SAP Testmanagement umfasst alle Aktivitäten zur Planung, methodischen Durchführung und Überwachung der dafür notwendigen Testaktivitäten. Das Ziel des SAP Testmanagements ist es zu einer zentralen Anlaufstelle für Testaktivitäten zu gelangen.
Wozu benötige ich das SAP Testmanagement?
Ziel des Testings ist es, Funktionalität und Qualität einer Software sicherzustellen. Ein reibungsloser Produktivbetrieb soll gewährleistet und Probleme präventiv vermieden werden. Oft werden Bugs und andere technische Probleme erst durch die systematische Fehlersuche in einem Testprozess sichtbar.
Wie hilft mir der SAP Solution Manager beim Testmanagement?
Die integrierten Test-Funktionalitäten des Solution Manager bieten umfangreiche Möglichkeiten Kosten und Risiken bei der Wartung von SAP Lösungen einzuschätzen und zu minimieren. Das Testen mit dem SAP Solution Manager lässt sich dabei als Testen innerhalb von Projekten und im Linienbetrieb unterscheiden.
Welche Fehler werden beim Testmanagement häufig gemacht?
Häufig gibt es kein oder unstrukturiertes Testmanagement sowie einen zu großen Testumfang. Ebenso fehlt häufig die Ergebnisdokumentation. Zudem wird häufig nur automatisiert getestet. Grund für diese Probleme kann schon eine schlechte Testvorbereitung sein.