Loading...

Testrealisierung

Sulzer Testrealisierung: für höchste Kundenansprüche

Die erfolgreiche Identifikation und Definition der relevanten Testumfänge stehen stets am Anfang der Sulzer Testrealisierung. Sie bilden die Basis für die Umsetzung der geplanten Tests. Im Rahmen der Testrealisierung erfolgen anschließend die Vorbereitung der Testmittel sowie die tatsächliche Durchführung der Tests.

Bei der Testdurchführung wird außerdem zwischen manuell und automatisiert durchgeführten Tests unterschieden. Je nach Projektanforderung werden in den unterschiedlichen Testphasen entweder manuelle oder automatisierte Tests oder auch beide Testarten eingesetzt.

Manuelle Testdurchführung

Bei der manuellen Testdurchführung führen Tester die definierten Tests händisch aus. Dabei nutzen Sie die Funktionen der zu testenden Lösung wie Endanwender über das User Interface des Systems. Die durchgeführten Testschritte und dabei erzielten Testergebnisse werden parallel im jeweiligen Testmanagementwerkzeug erfasst. Für eine möglichst effiziente Vorbereitung der Testdurchführung empfiehlt sich eine Checkliste, die die relevanten Arbeitsschritte abdeckt.

Kontrollliste für die Testdurchführung

Vorbereitung der Testwerkzeuge

  • Alle  Testwerkzeuge wie z. B. HP ALM, Screen Capture Tool etc. müssen verfügbar sein
  • Sicherstellung, dass alle Tester Zugriff auf die Testwerkzeuge haben
  • Prüfung, ob Workflow-Setup (z. B. Defect-Workflow) und Rollenzuweisung der Tester korrekt sind

Setup der Testszenarien

  • Vollständige Testdrehbuch muss für alle Tester verfügbar sein
  • Vorbereitung der Testszenarien im Testmanagementtool für alle geplanten Tests
  • Prüfung, ob alle benötigten Testdaten vorliegen

Verfügbarkeit der Testressourcen

  • Alle Tester müssen eingeplant und deren Verfügbarkeit sichergestellt sein
  • Verfügbarkeit des Testequipments der Tester (Notebooks, Drucker, Barcode-Scanner etc.) prüfen
  • Testsysteme müssen im Testzeitraum – falls notwendig auch exklusiv – zur Verfügung stehen

Verfügbarkeit der Testinfrastruktur

  • Verfügbarkeit der Testräume für geplanten Zeitraum prüfen
  • Notwendige IT-Infrastruktur (Netzwerk, Telefon etc.) muss vorhanden sein
  • Sicherstellung der weiteren Versorgung (Verpflegungsmöglichkeiten etc.)

Sicherstellung von Projektkommunikation und Reporting

  • Einstellen der Termine zur Abstimmung des Testteams (z. B. morgendlicher Stand-up)
  • Prüfung, ob Termine zum Statusreporting und zur Festlegung evtl. erforderlicher Maßnahmen zur Beseitigung von Testblockern (z. B. abendlicher Test Jour fixe) eingeplant sind
  • Relevante Entscheidungsträger müssen im Test Jour fixe verfügbar sein
  • Eskalationsprozess muss an das Testteam kommuniziert und Eskalationswege müssen klar definiert sein

Nach erfolgreicher Testvorbereitung steht einem strukturierten und effizienten Testablauf nichts mehr im Wege. Die Testdurchführung erfolgt auf Basis des Testdrehbuchs. Identifizierte Abweichungen werden gemäß Defect-Managementprozess bearbeitet und erforderliche Eskalationen anhand des ebenfalls im Testkonzept dokumentierten Eskalationsmanagements eingeleitet.

Best Practice: Passgenaue Auswahl der Tester

Die Durchführung von Tests auf Ebene von Modulen oder Komponenten erfolgt in der Regel innerhalb der Entwicklungseinheit. In den darüber liegenden Teststufen ist erfahrungsgemäß der Einsatz von fachlichen, prozessnahen Testern am effizientesten. Im Rahmen von Regressionstests sind die Einbindung fachlich weniger versierter Tester (auch Near- und Offshore-Ressourcen) sowie der Einsatz von Testautomatisierung problemlos möglich und auch sinnvoll.

Automatisierte Testdurchführung

Neben der manuellen Testdurchführung ist auch die automatisierte Durchführung von Tests möglich. Dabei wird die Testautomatisierung in vielen Projekten ergänzend zu manuellen Tests eingesetzt. Aus unserer Erfahrung bietet sich der Einsatz von Automatisierung bei dynamischen Tests mit mehr als dreimaliger Wiederholung an. Der im konkreten Projektkontext geeignete Zeitpunkt für den Einsatz von Testautomatisierung wird in einer Kosten-Nutzen-Analyse ermittelt. Dabei werden neben den initialen Automatisierungskosten auch die Wartungsaufwände von Automatisierungsframework, Testskripten etc. der Zeitersparnis in den wiederholten Testausführungen gegenübergestellt.

In zahlreichen Kundenprojekten haben wir profunde Erfahrungen in der gesamten Bandbreite möglicher Varianten der Testautomatisierung gesammelt – angefangen von individuell von uns erstellten Testframeworks für System- und Modultests über die routinemäßig flächendeckend verwendeten Modultests mit Unit-Test Frameworks bis hin zur Anwendung verbreiteter Werkzeuge zur Automatisierung von GUI-Tests, wie z.B. HP QTP/UFT, QF-Test oder Selenium.

Regressionstests

Ein klassisches Anwendungsbeispiel für Testautomatisierung sind Regressionstestumfänge. Typischerweise erfolgt die Durchführung dynamischer Tests von neuen Funktionsumfängen manuell. Eine Überleitung der in mehrfachen manuellen Testdurchläufen verifizierten, konkreten Testfälle in automatisiert testbaren Testskripten erfolgt nach funktionaler Stabilisierung der Testobjekte.

Entsprechend steigt der Anteil automatisierter Tests im Vergleich zu manuellen Tests mit zunehmendem Reifegrad einer Applikation an. Pro Release nimmt der Umfang neu zu verifizierender Funktionalität im Verhältnis zur existierenden Funktionalität ab. Die Regressionstestumfänge zur Aufdeckung von Fehlerwirkungen aus der Umsetzung neuer Anforderungen steigen dagegen überproportional.

Durch den höheren Automatisierungsgrad von Regressionstests kann der ansteigende Testaufwand in Teilen ausgeglichen werden. Eine signifikante Kompensation erfordert jedoch eine effiziente und systematische Auswahl der Regressionstestfälle.

Best Practice: Most Critical Items

Um in unseren Testprojekten eine effiziente Auswahl von Regressionstestfällen zu erreichen, binden wir bereits in der Testanalyse relevante Stakeholder ein. Ein erprobter Weg sind dabei Workshops, in denen mit aktiver Einbeziehung der Projekt-Stakeholder aus der Matrix der abzusichernden Geschäftsvorfälle die Most Critical Items (MCI) ermittelt werden. Die so identifizierten MCIs bilden dann die verlässliche Basis zur Auswahl der Testszenarien für Regressionstests anhand der ebenfalls getroffenen Zuordnung der Testszenarien zu den Geschäftsvorfällen.

Last- und Performancetest

Neben den funktionalen Anforderungen an IT-Lösungen sind im Rahmen der Tests auch deren nichtfunktionale Qualitätskriterien abzusichern. Dazu gehört etwa die Systemstabilität unter Last sowie die Einhaltung von Performanceanforderungen. Diese nichtfunktionalen Anforderungen werden im Rahmen von Last- und Performancetests geprüft.

Last- und Performancetests sind eine weiteres typisches Einsatzfeld für automatisierte Testdurchführung. Aus praktischen Erwägungen wie auch Kostengründen sind manuelle Tests hier meist nicht möglich oder sinnvoll. Zur Testrealisierung kommen meist spezialisierte Testwerkzeuge wie HP Loadrunner oder NEOTYS Neoload zum Einsatz.

Individuell abgestimmte Testmischung

Unsere Beratung und Unterstützung im Testing richten sich klar nach den Bedürfnissen und Anforderungen der Kunden. Deshalb bestimmen wir bei jedem Projekt stets aufs Neue die geeignete Mischung aus manuellen und automatisierten Tests – für eine reibungslose und effiziente Testdurchführung mit bestmöglicher Kosten-Nutzen-Relation.

Scroll to Top