Seien Sie ein intelligenterer Software-Tester mit diesen 5 köstlichen Technologiekombinationen
Von Chris Colosimo
18. Oktober 2017
5 min lesen
Ein Erdnussbutter-Gelee-Sandwich hat etwas Magisches. Die Erdigkeit der Erdnussbutter, gemischt mit der Würze des Gelees, schafft einen ganz neuen Geschmack, der nirgendwo anders als in der magischen Kombination dieser beiden Zutaten existiert. Erdnussbutter und Gelee sind für mich das perfekte Beispiel für die Vorstellung, dass ein Ganzes größer ist als die Summe seiner Teile. Genau das Gleiche kann in der Welt der Softwaretests erreicht werden, und bei großen Softwarebereitstellungen für Parasoft habe ich im Wesentlichen nur ein paar Sandwiches mit Erdnussbutter und Gelee hergestellt. Daher dachte ich, ich würde einige dieser Kombinationen, die ich bei Parasoft erstellt habe, durchgehen, beschreiben, wie man sie kombiniert, und veranschaulichen, was Sie erreichen können.
Dynamische Testumgebungen von Parasoft SOAtest und Parasoft Virtualize
In der Welt der Testwerkzeuge für Erdnussbuttersandwiches ist dies die Nummer eins. Ich mag hier als Produktmanager für Funktionstest-Tools voreingenommen sein, aber meiner Meinung nach gibt es keine bessere Kombination von Parasoft-Technologien als die Verbindung der API-Testfunktionen von SOAtest und der Service-Virtualisierungsfunktionen von Virtualize.
Dynamische Testumgebungen
Der offensichtlichste Mehrwert, den Sie durch die Kombination dieser beiden Technologien erzielen können, ist die Fähigkeit zur Schaffung dynamische Testumgebungen. Normalerweise ist dies eine Funktion, die in der Regel in die Servicevirtualisierung verwiesen wird. Ein häufig übersehenes Element ist jedoch die Fähigkeit, Testfälle im Kontext einer Umgebung auszuführen. Durch die Kombination von SOAtest und Virtualize kann ein Benutzer eine wiederverwendbare Vorlage erstellen, die als Funktion der kontinuierlichen Integration bereitgestellt werden kann. Diese Umgebungsvorlage ist eine Kombination aus virtuellen Diensten und Testfällen.
Dadurch wird im Wesentlichen eine Art Sandwich-Effekt auf Ihre Anwendung erzielt, der leistungsstark ist, da Sie die Testfälle und ihre Validierungen an den virtuellen Backend-Diensten ausrichten können. Auf diese Weise können Sie ein echtes CI erzielen, da Sie wissen, dass Ihre Testfälle bei der Ausführung mit den entsprechenden virtuellen Diensten verknüpft werden und Ihre Testumgebung sich selbst bereitstellen kann. Wenn die SOAtest-Testfälle für die Ausführung vorbereitet sind, besteht der erste Schritt im Testfall darin, Virtualize aufzurufen und die richtigen virtuellen Dienste und Daten einzurichten. Der letzte Schritt des Tests besteht darin, Virtualize aufzurufen und die Umgebung herunterzufahren. Viola! Umwelt Sandwich.
Validieren von Middleware mit Parasoft Virtualize & Parasoft SOAtest
Oben haben wir SOAtest im Kontext einer von Virtualize bereitgestellten virtuellen Umgebung verwendet. Wenn Sie diese Beziehung umkehren, können Sie Virtualize verwenden, um SOAtest während der Testausführung zu unterstützen.
Middleware validieren
Virtuelle Dienste können an Endpunkten abhören. Sie müssen nicht zurück antworten, wenn sie angerufen werden. Sie können den Anruf tatsächlich weiterleiten. Mit der Dienstvirtualisierung können Sie einen virtuellen Dienst erstellen, der in einer Middleware-Anwendung gespeichert und einfach überwacht wird. Wenn dann eine Middleware-Komponente eine andere Middleware-Komponente aufruft, haben Sie einen „Abfangpunkt“. Zu diesem Zeitpunkt können Sie einen virtuellen Dienst aufrufen, der einfach meldet, dass die Nachricht sie auf ihrem Weg sendet. Aber was können wir mit dieser Botschaft anfangen?
Hier wird die Kombination von SOAtest und Virtualize leistungsstark. Virtualize kann diese Nachrichten zu Validierungszwecken an SOAtest zurückmelden. SOAtest kann dann Anrufe gegen das Front-End ausführen, während Virtualize in der Mitte „zuhört“. Während der Ausführung von Testfällen kann Virtualize Transformationsnachrichten an SOAtest zurückmelden. Die Ereignisse werden während der Ausführung des Testfalls gemeldet, und die Daten aus der Anforderung können in Form einer Validierung mit dem Ereignis verknüpft werden, das von Virtualize zurückkommt, wodurch echte dynamische End-to-End-Tests erstellt werden.
Leistungstests mit Parasoft SOAtest & Parasoft LoadTest
Arbeiten, die Sie in SOAtest ausführen, können sofort in LoadTest verfügbar werden, der Leistungstestlösung von Parasoft, die sich in SOAtest befindet und es Ihnen ermöglicht, API-Tests nicht nur schnell auszuführen, sondern die Antworten automatisch gemäß Ihren SLAs zu validieren.
Leistungstests nach links verschieben
SOAtest gibt es schon seit langer Zeit, und Benutzer haben lange Zeit an der Lösung gearbeitet, um leistungsstarke End-to-End-Testfallszenarien zu erstellen. Was die meisten Menschen jedoch möglicherweise nicht wissen, ist, dass alle diese Testfälle in LoadTest ausgeführt werden können. In SOAtest gibt es eine schnelle Funktionalität, mit der Sie alle Ihre API-Tests für LoadTest konfigurieren und validieren können. Dies bedeutet, dass Sie keine Leistungstests erstellen müssen. Sie können einfach die Arbeit des Testteams nutzen und sie schnell ausführen.
Dies ist Software-Testautomatisierung vom Feinsten. Durch die Kombination dieser beiden Technologien können Sie effizient aussagekräftigere Leistungstests erstellen. SOAtest ruft APIs auf und übt die Web-Frontends vor der Ausführung des Auslastungstests aus. Dadurch erhalten Sie ein höheres Maß an Komfort, das Ihr Leistungstest problemlos ausführen kann, da die Umgebung vorab validiert wurde. Mit dieser Kombination können Sie sowohl bei der ersten Testerstellung als auch bei der Testausführung viel Zeit sparen.
Vorkonfigurierte Leistungstestumgebungen mit Parasoft LoadTest und Parasoft Virtualize
Virtualize kann virtuelle Dienste mit „Leistungsprofilen“ erstellen. Diese Leistungsprofile verlangsamen die Antwortzeiten der virtuellen Dienste auf eine vorhersehbare Basislinie. Sie können diese Leistungsverzögerungen entweder manuell konfigurieren oder von einer Anwendungsleistungs-Engine wie AppDynamics oder Dynatrace abrufen. Diese Dienste können dann in einer Umgebung bereitgestellt werden, die für Leistungstests festgelegt ist, wodurch die Kombination aus Virtualize und LoadTest sehr leistungsfähig wird.
Vorkonfigurierte Leistungstestumgebungen
Virtualize legt die Bühne fest und bietet eine Basis für die Umgebung. LoadTest kann dann in dieser Umgebung ausgeführt werden, um Leistungsprobleme chirurgisch zu identifizieren. Dies ist außerordentlich leistungsfähig, da Sie eine Umgebung erstellen, die für den LoadTest angepasst ist. Als Voraussetzung für die Ausführung von Leistungstests kann LoadTest Virtualize anweisen, in den Leistungsmodus zu wechseln, wodurch die Leistungsbasislinien auf bestimmte simulierte Anwendungen angewendet werden.
LoadTest validiert dann die gesamte Umgebung und wir können die Verzögerungszeit verstehen, die von virtuellen Diensten im Vergleich zu unseren realen Diensten kam. Diese Informationen sind wertvoll, da sie uns genau sagen, wo unsere Leistungsengpässe liegen. Durch den Wechsel verschiedener Komponenten zwischen real und virtuell und die Anwendung unterschiedlicher Leistungsbasislinien können wir Leistungsprobleme chirurgisch identifizieren.
Anforderungen und Rückverfolgbarkeit verstehen mit Parasoft SOAtest & Parasoft DTP
Wenn wir den Gang zwischen API-Funktionstests und Entwicklungstests überschreiten, können wir unsere Berichts- und Analyseplattform Parasoft DTP nutzen, um unsere Technologien erheblich zu erweitern. Es wurde entwickelt, um alle Arten von Informationen aus Entwicklungs- und Testaktivitäten aufzunehmen und aussagekräftige Widgets und Berichte bereitzustellen, mit denen Benutzer die Release-Bereitschaft beurteilen können.
Anforderungen & Rückverfolgbarkeit
DTP kann eine Verbindung zu Anforderungs-Engines wie Jira herstellen, bestimmte Informationen zu Anforderungssätzen abrufen und diese Informationen in DTP anzeigen, um eine klare Sichtbarkeit zu gewährleisten. Auf der anderen Seite des Zauns kann SOAtest bestimmte Testfälle mit den zugehörigen Anforderungen verknüpfen. Durch die Kombination dieser beiden Technologien können Sie den Workflow beschleunigen: DTP kann dem Benutzer die Anforderungen präsentieren und Testfälle für sie erstellen. Diese Testfälle werden dann auf dem SOAtest-Server oder -Desktop angezeigt. Der Benutzer kann dann jeden Testfall erstellen, ändern oder aktualisieren, um die Funktionalität zu erhalten, die seine spezifischen Anforderungen abdeckt.
Und jetzt beginnt die wahre Magie! Da innerhalb der Berichts- und Analyse-Engine eine Bindung an die Anforderung besteht, werden diese Ergebnisse jedes Mal, wenn Sie diesen Testfall ausführen, an die Anforderung gebunden. Wenn Sie sich mit den Details befassen möchten, wird dies in a ausführlich behandelt letzten Blog-PostDer Nettoeffekt besteht jedoch darin, dass Sie sehen können, ob allen Anforderungen Testfälle zugeordnet sind und wie diese spezifischen Testfälle ausgeführt werden. Dies hilft wirklich bei der Release-Bereitschaft, da Sie wissen, ob etwas getestet wurde und ob einige geschäftskritische Funktionen fehlschlagen.
Fazit
So wie Erdnussbutter- und Gelee-Sandwiches Zutaten für eine optimale Köstlichkeit kombinieren, bietet die Kombination von Softwaretesttechnologien zusammen ein leistungsstarkes Framework für die Automatisierung von Softwaretests der nächsten Stufe, das effizienter ist und ehrlich gesagt mehr Spaß macht. Es gibt viele weitere Möglichkeiten, unsere automatisierten Softwaretest-Tools miteinander zu kombinieren, aber dies ist ein guter Anfang. Letztendlich geht es wirklich darum, sicherzustellen, dass Sie Ihre Anwendung gründlich getestet haben. Also geh raus und lass dich naschen.