Erzielen Sie kontinuierliche Tests in Microsoft VSTS mit Service Virtualization
Von Parasoft
17. November 2016
4 min lesen
Die heutigen DevTest-Teams stehen unter immensem Druck, mehr Software bereitzustellen und dies schneller als je zuvor. Da sich die meisten Unternehmen auf Software als primäre Schnittstelle zum Kunden verlassen, ist es keine Option mehr, bei der Qualität Kompromisse einzugehen, um eine Veröffentlichung zu beschleunigen.
Es gibt kein Patentrezept für die schnelle Bereitstellung von Qualität, aber ein wesentliches Element ist der uneingeschränkte Zugriff auf eine vertrauenswürdige und realistische Testumgebung (z. B. einschließlich der zu testenden Anwendung (AUT) und aller ihrer abhängigen Komponenten). Andernfalls können Sie die mit jeder User Story verbundenen Änderungsauswirkungen nicht genau und gründlich validieren oder sicher sein, dass die sich entwickelnde Anwendung die allgemeine Benutzererfahrung nicht beeinträchtigt.
Die Herausforderung: Zugriff auf eine vollständige Testumgebung
Der Zugriff auf eine vollständige Testumgebung hilft Ihnen nicht nur, eine höhere Geschwindigkeit zu erreichen. Außerdem können Sie das Risiko eines Release-Kandidaten während eines CI/CD Prozess- und Identifizierungskandidaten mit hohem Risiko frühzeitig in der Lieferpipeline verarbeiten und identifizieren.
Die Herausforderung besteht darin, dass bei heutigen komplexen Systemen diese Art des Zugriffs auf die Testumgebung eher die Ausnahme als die Regel ist. Obwohl es früher üblich war, dass Unternehmen eine lokale physisch bereitgestellte Testumgebung einrichten, hat die Komplexität moderner Anwendungen diesen Ansatz für die heutigen Entwicklungsprozesse zu langsam und unerschwinglich gemacht. Darüber hinaus ist es in vielen Fällen aufgrund von Abhängigkeiten, die in der Testumgebung nicht reproduziert werden können, geradezu unmöglich.
Die Lösung: realistische Testumgebungen mit Service-Virtualisierung
Sie können Technologien wie kombinieren Microsoft Azure (für elastische Skalierbarkeit), Microsoft Visual Studio-Teamdienste (für die Build- und Bereitstellungsautomatisierung) und Parasoft Virtualisieren (um Abhängigkeiten zu simulieren und darauf zuzugreifen) um auf eine vollständige, realistische Testumgebung zuzugreifen. Es sieht ungefähr so aus:
Durch die Nutzung eines Microsoft-Ökosystems mit VSTS und Azure erhalten Unternehmen sofortigen Zugriff auf Skalierung und Bandbreite. Dies bedeutet, dass Sie die Ressourcen erhalten, die für einen flexiblen und allgegenwärtigen Zugriff auf Anwendungsstapel erforderlich sind, die für DevTest-Zwecke unter Ihrer Kontrolle stehen.
Aber was ist mit den abhängigen Systemkomponenten, die außerhalb Ihres Bereichs oder Ihrer Kontrolle liegen (z. B. Anwendungen von Drittanbietern, SAP, Mainframes, noch nicht implementierte Services usw.)? Hier kommt die Service-Virtualisierung ins Spiel. Sie können ihr Verhalten mit Parasoft Virtualize simulieren und so die letzte Lücke beim Zugriff auf die Testumgebung beseitigen, die die Testbemühungen der Teams häufig behindert.
Verwenden von Parasoft Virtualize mit Microsoft Azure und VSTS
Durch die Kombination von Microsoft Azure, Microsoft VSTS und Parasoft Virtualize (die nativ in der Microsoft-Umgebung ausgeführt werden können) können Unternehmen bei Bedarf schnell eine vollständige Testumgebung bereitstellen. Die realistischsten abhängigen Komponenten, die zu diesem bestimmten Zeitpunkt verfügbar sind, werden aus einem zentralen Repository zusammengefasst und dann automatisch bereitgestellt. Der „realistischste Satz abhängiger Komponenten“ ist häufig eine Kombination beider realer Komponenten und simulierte Komponenten, die über Service-Virtualisierung bereitgestellt werden.
Diese simulierten Testumgebungen sind leicht und Azure-kompatibel. Wenn Sie also skalieren müssen (z. B. für Leistungstests), können Sie dies bei Bedarf tun. Sie sind auch wegwerfbar. Eine Testumgebung kann sofort aus einer goldenen Vorlage bereitgestellt, verwendet und verschmutzt und dann einfach zerstört werden. Sie müssen keine Zeit damit verbringen, die Umgebung zurückzusetzen oder die Daten in ihren ursprünglichen Zustand zu versetzen. Die exakt gleiche Umgebung kann sofort hochgefahren werden, wann immer sie benötigt wird (z. B. zum Reproduzieren oder Überprüfen von Fehlern).
Service-Virtualisierung mit Microsoft Azure und VSTS
Um den Bereitstellungsprozess zu optimieren und zu beschleunigen, können Sie Microsoft Azure und Microsoft VSTS nutzen, um automatisch verfügbare Testumgebungen auf Servern bereitzustellen, die in der Cloud ausgeführt werden, und vollständige Testumgebungen in Sekundenschnelle verfügbar zu machen.
Das folgende Diagramm zeigt eine Möglichkeit, wie Sie mit Microsoft Azure und Microsoft VSTS schnell eine vollständige Testumgebung in weniger als 10 Minuten bereitstellen können:
Wenn Sie dies auf Parasoft Virtualize ausweiten, finden Sie hier einen kurzen Überblick darüber, wie die Schritte zur Servicevirtualisierung und zur Umgebung konfiguriert werden können (wir gehen davon aus, dass Sie bereits wissen, wie Sie Ihr AUT bereitstellen).
Parasoft Virtualize-Server können automatisch auf Cloud-basierten Azure-VMs bereitgestellt werden, die von Azure Resource Manager zugewiesen wurden. Dies rationalisiert nicht nur die Installation, sondern bietet auch Elastizität und Skalierbarkeit.
"Goldene Kopien" simulierter Testumgebungen werden über die browserbasierte Oberfläche von Parasoft definiert. Mithilfe eines Systemdiagramms können Sie eine vollständige Umgebung einschließlich aller abhängigen Komponenten definieren. Sie können dann Simulationstechnologien nutzen, um die Umgebung so zu trainieren, dass sie sich auf bestimmte Weise verhält.
Angenommen, Sie haben die folgende Umgebung für eine Beispielbankanwendung. In einer einzelnen Parasoft-Umgebung können Sie mithilfe der Simulationstechnologie das Verhalten der Systemumgebungen konfigurieren. Es wäre sehr zeitaufwändig, dies mit den tatsächlichen Anwendungen zu erreichen.
Jede der verschiedenen „goldenen“ Umgebungsinstanzen kann dann in jeder Phase der Microsoft VSTS-Pipeline automatisch auf Ihren Azure-VMs bereitgestellt werden. Sie können beispielsweise eine simulierte Testumgebung als Erstellungsschritt wie folgt bereitstellen:
Beginnen Sie mit der Service-Virtualisierung
Willst du das selbst ausprobieren? Sie können innerhalb weniger Minuten mit der Servicevirtualisierung beginnen. Parasoft Virtualize ist auf dem Microsoft Azure Marketplace und verfügbar Microsoft VSTS-Marktplatz. Für Parasoft Virtualize gibt es zwei Lizenzmodelle: Verbrauch von Stundenabrechnungen oder eigene Lizenz.
Parasoft Virtualize, das kürzlich von voke Research zum führenden Innovator für Service-Virtualisierung ernannt wurde, ist für seinen einzigartigen umgebungsbasierten Ansatz bekannt. Die Kombination aus Microsoft Azure, Microsoft VSTS und Parasoft Virtualize wurde entwickelt, um Teams den schnellen, skalierbaren und flexiblen Zugriff auf die Testumgebung zu ermöglichen, der für Agile, DevOps und „Continuous Everything“ erforderlich ist.
Um mehr über das kontinuierliche Testangebot von Parasoft zu erfahren, besuchen Sie bitte: www.parasoft.com/solutions/continuous-testing/