So machen Sie Softwaretests schneller und billiger
Von Parasoft
11. September 2014
3 min lesen
Eine kürzlich durchgeführte Umfrage, bei der Softwareentwickler, Tester und Leistungstestingenieure eine Reihe von Fragen zum Zugriff auf Testumgebungen stellten, ergab Folgendes:
- Das Testen der heutigen zusammengesetzten, verteilten Anwendungen erfordert die Interaktion mit einer Reihe von abhängigen (verbundenen) Anwendungen, auf die nur schwer zugegriffen werden kann. Unsere Umfrage zeigt, dass durchschnittlich 30 abhängige Anwendungen, von denen nur 20% für frühe Tests verfügbar sind.
- Der Zugriff auf Testressourcen ist in der Praxis äußerst eingeschränkt. 76% der Befragten haben eingeschränkten Zugriff auf Testumgebungen und 71% müssen bestimmte Zeiten für den Zugriff auf diese Umgebungen festlegen.
- Die Zeit, die für den Zugriff auf Testumgebungen zur Verfügung steht, ist äußerst begrenzt (4-Stunden-Slots), und 30% dieser begrenzten Zeit wurden für Konfigurations- / Setup-Aufgaben benötigt.
- Letztendlich hatten die Tester Zeit, nur 50% des verfügbaren Testplans auszuführen.
Warum gehen so viele Unternehmen ihr Risiko mit Qualität ein, anstatt uneingeschränkten Zugang zu den Umgebungen zu gewähren, die für effektive Tests erforderlich sind? Ein Schlüsselfaktor könnten die exorbitanten Kosten und die Komplexität sein, die traditionell mit der heutigen Testumgebung verbunden sind.
Der Versuch, Zugriffsbeschränkungen für Testumgebungen durch Aufbau einer abgestuften Testumgebung oder eines virtuellen Testlabors zu lösen, kann außerordentlich teuer sein. In vielen Situationen kann das Erstellen einer solchen Umgebung mit bereitgestellten Anwendungsinstanzen und virtuellen Testlabors technisch unmöglich sein - beispielsweise wenn die abhängige Anwendung eine Drittanbieteranwendung, ein komplexes System (wie ein Mainframe) ist, das von einer anderen Abteilung gehostet wird, oder ein Anwendung über die „geopolitischen“ Grenzen der Gruppe hinaus, die die Tests durchführt. Und selbst wenn die Erstellung einer „vollständigen“ Testumgebung möglich ist, ist die Konfiguration und Wartung aller abhängigen Anwendungen mit hohen laufenden Betriebskosten verbunden.
Die Service-Virtualisierung reduziert das Ausfallrisiko und senkt gleichzeitig die Kosten
Die Dienstvirtualisierung stellt einen effizienteren und kostengünstigeren Ansatz dar, um Testzugriffsbeschränkungen in Situationen zu lösen, in denen der Zugriff auf und/oder die Konfiguration einer abhängigen Anwendung für Entwicklungs-/Testzwecke schwierig ist.
Die Service-Virtualisierung bietet rund um die Uhr Zugriff auf die abhängiges Anwendungsverhalten das ist für die Entwicklung und das Testen erforderlich. Neben der Beseitigung der Zugriffsbeschränkungen, die das Testen behindern, werden auch die mit dem Einrichten, Konfigurieren und Verwalten von Testumgebungen verbundenen CapEx und OpEx erheblich reduziert. Unternehmen, die die Service-Virtualisierung nutzen, können Tests früher, schneller, gründlicher und genauer durchführen, wodurch das Risiko eines Anwendungsfehlers erheblich verringert wird.
Service-Virtualisierung hilft bei der Überwindung von Testherausforderungen
Branchenübergreifend beschleunigt die Service-Virtualisierung das Testen zwischen Anwendungen:
- Einzelhandel: Die Service-Virtualisierung bietet Rapid Prototyping für sofortiges Feedback in Echtzeit.
- Telekommunikation: Greifen Sie als virtualisierte Dienste auf mehrere Netzwerkdienste und Partneranwendungen zu.
- Finanzdienstleistungen: Simulieren Sie das Verhalten älterer Legacy-Frames, um das Testen der Anwendungsintegration nach links zu verschieben.
- Utilities: Testen Sie Partner-APIs für die partnerübergreifende Integration.
Service-Virtualisierung ermöglicht kontinuierliche Tests
Mithilfe der Servicevirtualisierung können Entwicklungs- und QS-Teams jederzeit und überall auf die vollständigen, realistischen Testumgebungen zugreifen, die zum Entwickeln oder Testen einer Anwendung erforderlich sind. Das größte Hindernis für effiziente kontinuierliche Tests ist der Zugriff auf vollständige, realistische Testumgebungen, die zum Testen aussagekräftiger Transaktionen erforderlich sind. Durch das Ersetzen nicht verfügbarer Abhängigkeiten durch leicht zugängliche und konfigurierbare „virtuelle Assets“ ermöglicht die Servicevirtualisierung den Teams, früher mit dem Testen zu beginnen, vollständiger zu testen und kontinuierlich zu testen.
- Erfassen und simulieren Sie das Verhalten des Live-Systems anhand der Aufzeichnung
- Modellieren Sie unvollständige / nicht verfügbare Komponenten schnell aus Dienstdefinitionen und Protokollen
- Konfigurieren Sie einfach komplexe Testbedingungen (z. B. "Was-wäre-wenn", Sicherheits-, Parallelitäts-, Failover-, Leistungs- und negative Testszenarien).
- Simulieren Sie alle Systeminteraktionen - unterstützt REST- und Webdienste sowie branchenführende über 120 Protokolle / Nachrichtentypen
Warum Service-Virtualisierung?
Die Servicevirtualisierung bietet klare Vorteile:
- Testet die Anwendung in einer nahezu vollständigen Produktionsumgebung oder nicht, abhängig von den Anforderungen des Tests und der Verfügbarkeit der Abhängigkeiten zu diesem Zeitpunkt.
- Verschieben Sie den Test nach links, indem Sie die Anwendung in der Produktionsumgebung so schnell wie möglich testen. Es ist immer möglich, auf Live-Dienste zu übertragen, sobald diese verfügbar und stabil sind.
- Reduzieren Sie die Zeit und den Aufwand für die Diagnose von Testfehlern. Mithilfe von Tools können Sie einfach und problemlos feststellen, wo Tests fehlgeschlagen sind.
- Erweitern Sie Anwendungstests mit API-Tests, die sowohl im Umgebungsmanager als auch als Teil einer C / CD-Pipeline konfiguriert werden können.
- Erhöhen Sie die Testabdeckung, indem Sie Szenarien erstellen, die nur über die Benutzeroberfläche nur schwer zu implementieren sind.
- Aktivieren Sie kontinuierliche Tests, indem Sie den Zugriff auf Testressourcen über virtualisierte Dienste verbessern
Diese Vorteile verringern die Gesamtbelastung für Tester beim Einrichten, Ausführen und Diagnostizieren von Anwendungstests, erhöhen die Testabdeckung und ermöglichen eine frühere und umfassendere Durchführung von Tests.