Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS Konzepte für das Testen von Anwendungen zur Mainframe-Modernisierung
AWS Application Testing verwendet Begriffe, die andere Testdienste oder Softwarepakete möglicherweise verwenden, mit einer etwas anderen Bedeutung. In den folgenden Abschnitten wird erklärt, wie AWS Mainframe Modernization Application Testing diese Terminologie verwendet.
Themen
- Testfall
- Testsuite
- Konfiguration der Testumgebung
- Hochladen
- Erneut abspielen
- Compare
- Datenbankvergleiche
- Vergleiche von Datensätzen
- Status des Vergleichs
- Regeln für die Gleichwertigkeit
- Vergleich von Datensätzen im Endzustand
- Vergleiche zwischen Datenbanken zum Stand und zum Fortschritt
- Funktionale Äquivalenz (FE)
- Online-Bildschirmvergleiche von 3270
- Daten erneut abspielen
- Referenzdaten
- Hochladen, Wiedergeben und Vergleichen
- Unterschiede
- Äquivalenzen
- Quellanwendung
- Zielanwendung
Testfall
Ein Testfall ist die individuellste Aktionseinheit in Ihrem Test-Workflow. Normalerweise wird ein Testfall verwendet, um eine unabhängige Einheit der Geschäftslogik darzustellen, die Daten modifiziert. Vergleiche werden für jeden Testfall durchgeführt. Testfälle werden einer Testsuite hinzugefügt. Testfälle enthalten Metadaten zu den Datenartefakten (Datensätze, Datenbanken), die durch den Testfall geändert werden, und zu den Geschäftsfunktionen, die während der Testfallausführung ausgelöst werden: Batch-Jobs, 3270 interaktive Dialoge und andere. Zum Beispiel die Namen und Codepages von Datensätzen.
Eingabedaten → Testfall → Ausgabedaten
Testfälle können entweder online oder stapelweise sein:
-
Online-3270-Bildschirmtestfälle sind Testfälle, bei denen der Benutzer interaktive Bildschirmdialoge (3270) ausführt, um neue Geschäftsdaten (Datenbank und/oder Datensatzdatensätze) zu lesen, zu ändern oder zu erstellen.
-
Batch-Testfälle sind Testfälle, bei denen ein Batch eingereicht werden muss, um neue Geschäftsdaten (Datensätze und/oder Datenbankdatensätze) zu lesen, zu verarbeiten und zu ändern oder zu erzeugen.
Testsuite
Testsuiten enthalten eine Sammlung von Testfällen, die nacheinander ausgeführt werden. Die Wiedergabe erfolgt auf der Ebene der Testsuite. Alle Testfälle in der Testsuite werden in der Zieltestumgebung ausgeführt, wenn eine Testsuite wiedergegeben wird. Wenn es nach dem Vergleich von Referenz- und Wiederholungstestartefakten Unterschiede gibt, werden die Unterschiede auf Testfallebene angezeigt.
Zum Beispiel Test Suite A:
Testfall 1, Testfall 2, Testfall 3 usw.
Konfiguration der Testumgebung
Die Konfiguration der Testumgebung ermöglicht es Ihnen, den anfänglichen Satz von Daten und Konfigurationsparametern (oder Ressourcen) einzurichten CloudFormation , die Sie benötigen, um den Testlauf wiederholbar zu machen.
Hochladen
Uploads werden auf der Ebene der Testsuite durchgeführt. Während des Uploads müssen Sie einen Amazon S3 S3-Speicherort angeben, der die Artefakte, Datensätze und relationalen CDC Datenbankjournale vom Quell-Mainframe enthält, mit denen verglichen werden soll. Diese werden als Referenzdaten aus dem Quell-Mainframe betrachtet. Während der Wiedergabe werden die generierten Wiedergabedaten mit den hochgeladenen Referenzdaten verglichen, um die Gleichwertigkeit der Anwendung sicherzustellen.
Erneut abspielen
Wiederholungen werden auf Testsuite-Ebene durchgeführt. Während der Wiedergabe verwendet AWS Mainframe Modernization Application Testing das CloudFormation Skript, um die Zieltestumgebung zu erstellen und die Anwendung auszuführen. Datensätze und Datenbankdatensätze, die während der Wiedergabe geändert werden, werden erfasst und mit den Referenzdaten vom Mainframe verglichen. In der Regel werden Sie den Upload einmal auf den Mainframe durchführen und dann mehrmals wiederholen, bis die funktionale Äquivalenz erreicht ist.
Compare
Vergleiche werden automatisch durchgeführt, nachdem eine Wiederholung erfolgreich abgeschlossen wurde. Bei Vergleichen werden die referenzierten Daten, die Sie während der Upload-Phase hochgeladen und erfasst haben, mit den während der Wiedergabephase generierten Wiedergabedaten verglichen. Vergleiche werden auf der Ebene einzelner Testfälle für Datensätze, Datenbankeinträge und Online-Bildschirme getrennt durchgeführt.
Datenbankvergleiche
Application Testing verwendet beim Vergleich von Änderungen in Datenbankdatensätzen zwischen der Quell- und der Zielanwendung eine Funktion zum Abgleich des Status und des Fortschritts. Beim State-Progress-Abgleich werden Unterschiede in jedem einzelnen Lauf INSERT und jeder DELETE Anweisung verglichen, im Gegensatz zum Vergleich von Tabellenzeilen am Ende des Prozesses. UPDATE Der State-Progress-Abgleich ist effizienter als Alternativen und ermöglicht schnellere und genauere Vergleiche, da nur geänderte Daten verglichen und Fehler im Transaktionsablauf erkannt werden, die sich selbst korrigieren. Durch den Einsatz der Technologie CDC (Changed Data Capture) kann Application Testing einzelne Änderungen in der Relationsdatenbank erkennen und sie zwischen Quelle und Ziel vergleichen.
Änderungen an der Relationsdatenbank werden vom getesteten Anwendungscode mithilfe von DML (Data Modification Language) -Anweisungen wie SQLINSERT, UPDATEoder an Quelle und Ziel generiert DELETE, aber auch indirekt, wenn die Anwendung gespeicherte Prozeduren verwendet, wenn Datenbank-Trigger für einige Tabellen gesetzt sind oder wenn sie verwendet CASCADEDELETEwerden, um die referenzielle Integrität zu gewährleisten, wodurch automatisch weitere Löschungen ausgelöst werden.
Vergleiche von Datensätzen
Application Testing vergleicht automatisch die Referenz- und Wiedergabedatensätze, die auf den Quell- (Aufnahme-) und Zielsystemen (Wiedergabe) erzeugt wurden.
Um Datensätze zu vergleichen:
-
Beginnen Sie mit denselben Eingabedaten (Datensätze, Datenbank) sowohl auf der Quelle als auch auf dem Ziel.
-
Führen Sie Ihre Testfälle auf dem Quellsystem (Mainframe) aus.
-
Erfassen Sie die produzierten Datensätze und laden Sie sie in einen Amazon S3 S3-Bucket hoch. Sie können Eingabedatensätze von der Quelle zur AWS Nutzung von CDC Journalen, Bildschirmen und Datensätzen übertragen.
-
Geben Sie den Speicherort des Amazon S3 S3-Buckets an, in den die Mainframe-Datensätze hochgeladen wurden, als Sie den Testfall hochgeladen haben.
Nach Abschluss der Wiedergabe vergleicht Application Testing automatisch die ausgegebenen Referenz- und Zieldatensätze und zeigt, ob die Datensätze identisch, gleichwertig, unterschiedlich sind oder fehlen. Beispielsweise werden Datumsfelder, die sich auf den Zeitpunkt der Workload-Ausführung beziehen (Tag +1, Ende des aktuellen Monats usw.), automatisch als gleichwertig betrachtet. Darüber hinaus können Sie optional Äquivalenzregeln definieren, sodass Datensätze, die nicht identisch sind, immer noch dieselbe geschäftliche Bedeutung haben und als gleichwertig gekennzeichnet werden.
Status des Vergleichs
Application Testing verwendet die folgenden Vergleichsstatus: IDENTICALEQUIVALENT, undDIFFERENT.
- IDENTICAL
-
Die Quell- und Zieldaten sind exakt identisch.
- EQUIVALENT
-
Die Quell- und Zieldaten enthalten falsche Unterschiede, die als Äquivalenzen angesehen werden, z. B. Datums- oder Zeitstempel, die sich nicht auf die funktionale Äquivalenz auswirken, wenn sie sich auf den Zeitpunkt der Workload-Ausführung beziehen. Sie können Äquivalenzregeln definieren, um zu ermitteln, worin diese Unterschiede bestehen. Wenn alle wiedergegebenen Testsuiten im Vergleich zu ihren Referenz-Testsuiten den Status IDENTICAL oder anzeigenEQUIVALENT, weist Ihre Testsuite keine Unterschiede auf.
- DIFFERENT
-
Die Quell- und Zieldaten enthalten Unterschiede, z. B. eine unterschiedliche Anzahl von Datensätzen in einem Datensatz oder unterschiedliche Werte in demselben Datensatz.
Regeln für die Gleichwertigkeit
Eine Reihe von Regeln zur Identifizierung falscher Unterschiede, die als gleichwertige Ergebnisse angesehen werden können. Offline-Tests auf funktionale Äquivalenz (OFET) führen bei einigen Ergebnissen unweigerlich zu Unterschieden zwischen dem Quell- und dem Zielsystem. Beispielsweise sind die Zeitstempel für Aktualisierungen konstruktionsbedingt unterschiedlich. Die Äquivalenzregeln erläutern, wie diese Unterschiede ausgeglichen und Fehlalarme beim Vergleich vermieden werden können. Wenn ein Datum beispielsweise Laufzeit +2 Tage in einer bestimmten Datenspalte ist, beschreibt es die Äquivalenzregel und akzeptiert eine Zeit auf dem Zielsystem, die Laufzeit am Zielsystem + 2 Tage ist, anstatt einen Wert, der genau derselben Spalte beim Referenz-Upload entspricht.
Vergleich von Datensätzen im Endzustand
Der Endstatus von Datensätzen, die erstellt oder geändert wurden, einschließlich aller Änderungen oder Aktualisierungen, die an den Datensätzen gegenüber ihrem ursprünglichen Zustand vorgenommen wurden. Bei Datensätzen untersucht Application Testing am Ende eines Testfalllaufs die Datensätze in diesen Datensätzen und vergleicht die Ergebnisse.
Vergleiche zwischen Datenbanken zum Stand und zum Fortschritt
Vergleiche von Änderungen, die an Datenbankeinträgen vorgenommen wurden, als Folge einzelner Anweisungen DML (Löschen, Aktualisieren, Einfügen). Application Testing vergleicht einzelne Änderungen (Einfügen, Aktualisieren oder Löschen einer Tabellenzeile) in der Quelldatenbank mit der Zieldatenbank und ermittelt Unterschiede für jede einzelne Änderung. Beispielsweise kann eine einzelne INSERT Anweisung verwendet werden, um in eine Tabelle eine Zeile mit anderen Werten in der Quelldatenbank als in der Zieldatenbank einzufügen.
Funktionale Äquivalenz (FE)
Zwei Systeme gelten als funktionell gleichwertig, wenn sie bei gleichen Eingabedaten bei allen beobachtbaren Operationen dieselben Ergebnisse liefern. Zwei Anwendungen gelten beispielsweise als funktionell gleichwertig, wenn dieselben Eingabedaten identische Ausgabedaten erzeugen (durch Bildschirme, Datensatzänderungen oder Datenbankänderungen).
Online-Bildschirmvergleiche von 3270
Vergleicht die Ausgabe der Mainframe-3270-Bildschirme mit der Ausgabe der Webbildschirme der modernisierten Anwendung, wenn das Zielsystem unter AWS Blu Age-Laufzeit in der läuft. AWS Cloud Und es vergleicht die Ausgabe der Mainframe-3270-Bildschirme mit den 3270-Bildschirmen der neu gehosteten Anwendung, wenn das Zielsystem unter Micro Focus Runtime in der läuft. AWS Cloud
Daten erneut abspielen
Wiedergabedaten werden verwendet, um die Daten zu beschreiben, die durch das Abspielen einer Testsuite in der Zieltestumgebung generiert werden. Wiedergabedaten werden beispielsweise generiert, wenn eine Testsuite auf einer AWS Mainframe-Modernisierungsdienstanwendung ausgeführt wird. Die Wiedergabedaten werden dann mit den Referenzdaten verglichen, die von der Quelle erfasst wurden. Jedes Mal, wenn Sie den Workload in der Zielumgebung wiedergeben, wird eine neue Generation von Wiedergabedaten generiert.
Referenzdaten
Referenzdaten werden verwendet, um die auf dem Quell-Mainframe erfassten Daten zu beschreiben. Dies ist die Referenz, mit der die von der Wiedergabe (Ziel) generierten Daten verglichen werden. Normalerweise gibt es für jeden Datensatz auf dem Mainframe, der Referenzdaten erstellt, viele Wiederholungen. Das liegt daran, dass Benutzer in der Regel den korrekten Status der Anwendung auf dem Mainframe erfassen und die Testfälle auf der modernisierten Zielanwendung erneut abspielen, um die Gleichwertigkeit zu überprüfen. Wenn Fehler gefunden werden, werden sie behoben und die Testfälle werden erneut abgespielt. Oft werden mehrere Zyklen wiederholt, Fehler behoben und erneut abgespielt, um das Auftreten zu überprüfen. Dies wird als Testparadigma bezeichnet: einmal aufzeichnen, mehrfach wiedergeben.
Hochladen, Wiedergeben und Vergleichen
Das Testen von Anwendungen erfolgt in drei Schritten:
-
Upload: erfasst die referenzierten Daten, die auf dem Mainframe für jeden Testfall eines Testszenarios erstellt wurden. Dazu können 3270 Online-Bildschirme, Datensätze und Datenbankeinträge gehören.
-
Für Online-3270-Bildschirme müssen Sie den Blu Insights-Terminalemulator verwenden, um Ihren Quell-Workload zu erfassen. Weitere Informationen finden Sie in der Blu Insights-Dokumentation
. -
Bei Datensätzen müssen Sie die von jedem Testfall auf dem Mainframe erzeugten Datensätze mithilfe gängiger Tools erfassen, z. B. FTP mit dem Dataset-Transfer-Service, der Teil der AWS Mainframe-Modernisierung ist.
-
Bei Datenbankänderungen verwenden Sie AWSMainframe Modernization Data Replication with Precisely Documentation, um CDC Journale mit
Änderungen zu erfassen und zu generieren.
-
-
Wiedergabe: Die Testsuite wird in der Zielumgebung wiedergegeben. Alle in der Testsuite angegebenen Testfälle werden ausgeführt. Spezifizierte Datentypen, die durch die einzelnen Testfälle erstellt wurden, wie Datensätze, relationale Datenbankänderungen oder 3270-Bildschirme, werden automatisiert erfasst. Diese Daten werden als Wiedergabedaten bezeichnet und mit den während der Upload-Phase erfassten Referenzdaten verglichen.
Anmerkung
Die Änderungen an der relationalen Datenbank erfordern DMS spezifische Konfigurationsoptionen in Ihrer Vorlage für Anfangsbedingungen. CloudFormation
-
Vergleichen: Die Referenzdaten für den Quelltest und die Ziel-Wiedergabedaten werden verglichen, und die Ergebnisse werden Ihnen als identische, unterschiedliche, gleichwertige oder fehlende Daten angezeigt.
Unterschiede
Zeigt an, dass beim Datenvergleich Unterschiede zwischen den Referenz- und den Wiederholungsdatensätzen festgestellt wurden. Beispielsweise wird ein Feld auf einem Online-3270-Bildschirm, das aus Sicht der Geschäftslogik unterschiedliche Werte zwischen dem Quell-Mainframe und der modernisierten Zielanwendung anzeigt, als Unterschied betrachtet. Ein anderes Beispiel ist ein Upload in einem Datensatz, der zwischen Quell- und Zielanwendungen nicht identisch ist.
Äquivalenzen
Äquivalente Datensätze sind Datensätze, die sich zwischen den Referenz- und Wiedergabedatensätzen unterscheiden, die aber aus Sicht der Geschäftslogik nicht als unterschiedlich behandelt werden sollten. Zum Beispiel ein Datensatz, der den Zeitstempel enthält, wann der Datensatz erstellt wurde (Workload-Ausführungszeit). Mithilfe anpassbarer Äquivalenzregeln können Sie Application Testing anweisen, eine solche falsch positive Differenz als Äquivalenz zu behandeln, auch wenn sie unterschiedliche Werte zwischen Referenz- und Wiedergabedaten anzeigt.
Quellanwendung
Die Mainframe-Quellanwendung, mit der verglichen werden soll.
Zielanwendung
Die neue oder geänderte Anwendung, auf der getestet wird und die mit der Quellanwendung verglichen wird, um etwaige Fehler zu erkennen und die funktionale Äquivalenz zwischen Quell- und Zielanwendung zu erreichen. Die Zielanwendung wird normalerweise in der AWS Cloud ausgeführt.