simple guide interoperability testing
Bevor Sie die Technik von verstehen 'Interoperabilitätstests' Lassen Sie uns zunächst den Begriff „Interoperabilität“ verstehen.
Interoperabilität ist die Fähigkeit eines Systems, mit einem anderen System zu interagieren. Diese Interaktion findet zwischen zwei verschiedenen Systemen oder zwei verschiedenen Anwendungen statt.
Oft wird Interoperabilität mit verwechselt Integration , Kompatibilität und Portabilität. Nun, es gibt Unterschiede zwischen diesen Techniken.
Lassen Sie mich zunächst die Unterschiede erläutern.
Integration - Ist eine Technik, bei der die Komponenten desselben Systems miteinander interagieren. Wenn wir also in der Testwelt Integrationstests durchführen, testen wir tatsächlich das Verhalten der zwei oder mehr niedrigsten Ebenen von Komponenten desselben Systems.
Kompatibilität - Ist eine Technik, mit der zwei oder mehr Anwendungen in derselben Umgebung interagieren. In der Testwelt, wenn wir Kompatibilitätstests durchführen; Wir überprüfen, ob sich zwei oder mehr Anwendungen oder Systeme in derselben Umgebung wie erwartet verhalten.
Hier soll überprüft werden, ob die beiden Systeme ihre erwarteten Aufgaben in derselben Umgebung ausführen, ohne sich gegenseitig zu stören. Like - MS Word und Calculator sind zwei verschiedene Anwendungen und führen ihr erwartetes Verhalten unabhängig voneinander im selben Betriebssystem aus. Wir sagen also, dass diese beiden Anwendungen miteinander kompatibel sind.
Portabilität - Ist eine Technik, bei der sich eine Anwendung oder ein System wie erwartet verhält, wenn es in eine andere Umgebung verschoben wird. Also rein Portabilität Beim Testen exportieren wir die Anwendung in eine andere Umgebung und testen ihr Verhalten. Wenn es eine Anwendung gibt, die unter Windows XP gut funktioniert, sollte sie auch unter Windows 10 gut funktionieren.
Interoperabilität - Ist eine Technik, wie eine Anwendung mit einer anderen Anwendung interagiert. Wenn wir also den Interoperabilitätstest durchführen, prüfen wir, wie die Daten einer Anwendung ohne vorherige Andeutung auf sinnvolle Weise in eine andere Anwendung übertragen und weiterverarbeitet werden, um die akzeptierte Ausgabe zu erhalten.
Dieses spezielle Dokument konzentriert sich auf Interoperabilitätstests (IOT). Konzentrieren wir uns also weiterhin auf Interoperabilität. :) :)
Was du lernen wirst:
- Interoperabilitätstests - Eine kurze Einführung
- Wie werden Interoperabilitätstests durchgeführt?
- Die 5 ½ Schritte:
- Herausforderungen:
- Interoperabilitätstest auf Mobiltelefonen:
- Fazit:
- Literatur-Empfehlungen
Interoperabilitätstests - Eine kurze Einführung
Interoperabilität = Inter + funktionsfähig
Inter - bedeutet 'zwischen uns', 'ineinander', 'gegenseitig'
Bedienbar - bedeutet 'fähig, die gegebene Aufgabe auszuführen'
Kombinieren Sie also die beiden Begriffe miteinander - Interoperabilität bedeutet zwei (oder mehr) Systeme, die in der Lage sind, ihre zugewiesene Aufgabe unabhängig auszuführen und wie erwartet miteinander zu kommunizieren, ohne die individuell zugewiesene Funktionalität zu beeinträchtigen.
Beispiel 1:Nehmen Sie ein Beispiel für die Reservierung Ihres Fluges. Überlegen Sie, ob Sie von Neu-Delhi nach New York reisen müssen. Jetzt haben Sie keinen Direktflug mehr. Sie müssen von Neu-Delhi nach London reisen und dann einen Anschlussflug von London nach New York nehmen. Aus zeitlichen Gründen reservieren Sie Ihren Flug von Neu-Delhi nach London mit 'Jet Airways' und von London nach New York mit 'Virgin Atlantic'. Das bedeutet, dass alle Ihre Passagierdaten von Jet Airways nach Virgin Atlantic übertragen wurden. Hier sind Jet Airways und Virgin Atlantic beide unabhängige Anwendungen, und während Sie Ihren Flug reservieren, wurden Ihre Buchungsdaten ohne vorherige Andeutung in voller Bedeutung von Jet Airways nach Virgin Atlantic ausgetauscht.
Beispiel 2:Stellen Sie sich in ähnlicher Weise das Krankenhausverwaltungssystem vor, bei dem die Patientenakten zwischen einer Abteilung und einer anderen Abteilung ausgetauscht werden. Hier kann also die Abteilung mit einer Anwendung verknüpft werden. Details des Patienten werden ohne vorherige Ankündigung zwischen einer Anwendung und einer anderen Anwendung ausgetauscht.
Warum müssen wir also das IOT machen?
Wir müssten die Interoperabilitätstests durchführen, um dies sicherzustellen
- Die Anwendungen im Netzwerk führen ihr erwartetes Verhalten unabhängig aus.
- Kann ohne vorherige Ankündigung Informationen austauschen
- Die Informationen / Daten werden ausgetauscht, ohne das individuell erwartete Verhalten zu unterbrechen
- Die ausgetauschten Daten / Informationen werden nicht modifiziert oder verändert
Wie werden Interoperabilitätstests durchgeführt?
Wir können dem Deeming-Rad (dem PDCA-Zyklus) folgen, um die Interoperabilitätstests durchzuführen.
# 1) Planen
Die Planung ist die wichtigste Phase bei der Festlegung der Strategie, fast alles in der Softwareentwicklung zu tun. Bevor wir tatsächlich planen, das Verfahren für die Durchführung des IOT festzulegen, ist es wichtig, dass wir jede einzelne Anwendung oder jedes System verstehen, die im Netzwerk bereitgestellt werden.
Wir sollten für alle Anwendungen wissen - ihre Funktionalität, ihr Verhalten, die Eingabe und die Ausgabe, die sie enthüllt.
Ich würde auch empfehlen, dass jede Anwendung vollständig funktionsfrei und fehlerfrei getestet wird, bevor sie für die Interoperabilitätstests vorbereitet wird. Wenn Sie also planen, denken Sie nicht nur an 1 oder 2 Anwendungen, sondern an alle Anwendungen als eine Einheit. Sie müssen eine Vogelperspektive haben, wenn Sie diese Testtechnik planen. Unnötig zu sagen - dokumentieren Sie Ihren Plan.
Wir können unsere verwenden Standard-Testplandokument und passen Sie es ein wenig an die Anforderung an, die Planung von IOT zu dokumentieren. Nachdem Ihr Testplan erstellt wurde, fahren Sie fort, um Ihre Testbedingungen abzuleiten.
Der Schwerpunkt der Ableitung Ihrer Testbedingung sollte nicht auf die einzelnen Anwendungen beschränkt sein. Stattdessen sollte es auf dem Datenfluss durch alle Anwendungen basieren. Die Bedingungen sollten so gestaltet sein, dass, wenn nicht alle, aber die meisten Anwendungen im Netzwerk durchlaufen werden.
Sobald Ihre Testbedingungen identifiziert sind, fahren Sie mit dem Entwurf oder Skript (falls Sie eine Automatisierung planen) Ihrer Testfälle fort. Sie können Erstellen Sie ein RTM (Requirements Traceability Matrix), um Ihre Testfälle mit Testbedingungen und Ihre Testbedingungen mit Akzeptanztestbedingungen / -anforderungen abzubilden.
Wenn Sie in einem Netzwerk arbeiten, ist es erneut wichtig, auch die nicht funktionalen Testaktivitäten zu planen. Dies darf nirgendwo geschrieben oder dokumentiert werden, es ist jedoch obligatorisch, die nicht funktionierenden Aspekte des gesamten Systems zu überprüfen. Diese nicht funktionierenden Bereiche würden Leistung und Sicherheit umfassen. Bei Bedarf können Sie einen separaten Plan für Funktionstests, Leistungstests und Sicherheitstests erstellen. oder erstellen Sie für jeden dieser Testtypen einen einzelnen Plan und ein anderes Dokument mit Testbedingungen.
# 2) Tun
Do - ist die Zeitspanne, in der Sie Ihre Ausführung tatsächlich durchführen. Planen Sie Ihre Zeit entsprechend, um die funktionalen und nicht funktionalen Tests durchzuführen. Wir folgen dem Testzyklus in dieser Phase, in der die Fälle ausgeführt, die Fehler protokolliert, mit dem Entwicklungsteam Kontakt aufgenommen, um die Fehler zu beheben, den erneuten Test und den Regressionstest des gesamten Systems durchführen, die Testergebnisse melden und an verschieben Schließung.
# 3) Überprüfen
Überprüfen - Ist die Phase, in der wir unsere Testergebnisse erneut überprüfen und versuchen, diese mit den RTMs abzubilden und zu überprüfen, ob alle erwarteten Anforderungen erfüllt sind und ob alle Anwendungen durchlaufen werden. Wir prüfen, ob die Daten korrekt und reibungslos zwischen den Anwendungen / Systemen übertragen und ausgetauscht werden. Wir müssten auch überprüfen, ob die durchquerten Daten nicht geändert werden.
Erwägen Sie auch eine Retrospektive des gesamten Prozesses der Interoperabilitätstests. Identifizieren Sie die Bereiche, die gut funktioniert haben, diejenigen, die nicht gut gelaufen sind, und alle Maßnahmen, die behoben werden müssen.
# 4) Akt
beste kostenlose Screenshot-Software für Windows 10
Act - Ist auf die nachträglichen Artikel zu handeln. Die Punkte, die als „bewährte Verfahren“ identifiziert wurden, führen diese weiter aus und die Punkte, die besser bearbeitet werden könnten, identifizieren die Schritte, um diese zu korrigieren, und handeln entsprechend. Denken Sie daran, dass die Bereiche oder Schritte, die nicht gut funktionierten, NICHT wiederholt werden sollten. Schließlich sollten wir aus unseren Fehlern lernen und sie nicht wiederholen.
Die 5 ½ Schritte:
- Identifizieren Sie alle Anwendungen, die Teil des Netzwerks sind.
- Identifizieren Sie ihre jeweiligen Funktionen.
- Identifizieren Sie für jede Anwendung die Eingabe und die Ausgabe, die sie zurückgibt.
- Identifizieren Sie die Daten, die alle / die meisten Anwendungen durchlaufen würden.
- Identifizieren Sie das erwartete Verhalten für jede Kombination aus Anwendung und Datum, die validiert werden muss
½ Dokumentieren Sie es.
Betrachten Sie die folgende Abbildung:
Versuchen wir anhand der Abbildung, die 5 ½ Schritte zu replizieren:
- Anwendung 1, Anwendung 2, Anwendung 3 und Anwendung 4 sind 4 verschiedene Systeme.
- Jedes dieser Systeme verfügt über einen bestimmten Funktionsumfang, der identifiziert werden muss.
- Ein- und Ausgänge jedes Systems müssen identifiziert werden.
- Im Fall von Application1 werden 2 Ausgänge gerendert. 1 Ausgabe bildet die Eingabe von Anwendung 3 und 1 Ausgabe bildet Eingabe von Anwendung 2. Die Ausgabe von Anwendung 2 bildet die Eingabe für Anwendung 3 und Anwendung 4 und so weiter.
- Die Gültigkeit für jeden Ein- und Ausgang wird überprüft. Der wichtigste Punkt, der hier berücksichtigt werden muss, ist, dass die Daten, die in Form von Eingabe und Ausgabe übertragen werden, nicht geändert werden UND die gesamte Anwendung abgedeckt ist.
½ Diese Zahl im wirklichen Leben scheint nicht so einfach zu sein. Dies führt tatsächlich zu einer komplexeren Struktur mit n Anzahlen von Eingabe- und Ausgabebedingungen.
Das Zeichnen dieser Art von Figur würde ein besseres Bild ergeben, um die Daten und Informationen zu identifizieren, die durch verschiedene Systeme laufen würden. Dies würde uns helfen, die Testbedingungen und -fälle abzuleiten.
Ein Beispiel::
Betrachten wir ein Beispiel für die Durchführung von Interoperabilitätstests für ein „Krankenhausmanagementsystem“.
Ein Krankenhaus besteht aus den folgenden Abteilungen und Unterabteilungen;
Hier ist jede Abteilung eine Anwendung für sich. Jede Abteilung (Anwendung) hat ihre eigene Unterabteilung (Module) und jedes Modul hat seine eigenen Einheiten.
Um nun den Umfang von IOT zu betrachten, sind hier einige Testbedingungen:
- Ein Patient, der einen Verkehrsunfall hatte (OPD-Abteilung - Unfall), muss sich einer Beinoperation (HNO - Allgemeine Chirurgie) unterziehen, muss sich dann der Physiotherapie (Unterstützungsabteilung - Physiotherapie) unterziehen und wird dann entlassen (Unterstützungsabteilung - Schließung).
- Ein zur Intensivpflege zugelassenes Kind (Pädiatrie - Intensivpflege) muss sich einer Operation unterziehen (Pädiatrie / HNO - Allgemeine Chirurgie) und wird dann entlassen (Unterstützungsabteilung - Abschluss / PR).
- Ein externer Patient konsultiert einen Allgemeinarzt (OPD-Abteilung); nimmt die verschriebenen Medikamente (Support-Abteilung - Apotheke) und geht weg.
- Eine werdende Mutter kommt zu regelmäßigen Kontrolluntersuchungen (Gynäkologische Abteilung - Mutter- und Kinderbetreuung), nimmt die verschriebenen Medikamente (Unterstützungsabteilung - Apotheke) und geht weg.
- Ein Zahnarzt macht den Wurzelkanal (Zahnarztabteilung), nimmt die verschriebenen Medikamente (Unterstützungsabteilung - Apotheke) und geht weg.
- Ein Patient kommt in OPD (Allgemeinarzt), wird in (Abteilung für Geburtshilfe und Gynäkologie - Hochrisiko-Geburtshilfe) behandelt und nimmt die verschriebenen Medikamente (Support-Abteilung - Apotheke) ein und wird entlassen
Auf diese Weise identifizieren wir alle Testbedingungen; Denken Sie daran, dass der größte Teil der Abteilung abgedeckt werden muss.
Wir können ein RTM zeichnen, um die Berichterstattung wie folgt anzuzeigen:
Auf diese Weise können wir mehr Testbedingungen identifizieren und das RTM zeichnen, um unseren genauen Umfang zu sehen. Außerdem können wir die Tiefe unserer Testbemühungen basierend auf dem RTM bestimmen.
Wie in diesem Beispiel sehen wir, dass die „Support-Abteilung“ die Anwendung ist, die den Ausgangspunkt für alle (die meisten) Anwendungen darstellt. Daher ist der Testaufwand für diese bestimmte Anwendung im Vergleich zu anderen Anwendungen etwas höher.
Herausforderungen:
- Es ist schwierig, die gesamte Anwendung mit allen Permutationen und Kombinationen zu testen.
- Anwendungen werden in verschiedenen Hardware- / Softwarekombinationen entwickelt und in verschiedenen Umgebungen installiert. Wenn also eine der Umgebungen ausfällt, wirkt sich dies auf die Tests aus.
- Aufgrund der unterschiedlichen Software und Umgebungen ist es selbst eine große Aufgabe, die Teststrategie zu bestimmen und auszuführen.
- Die Umgebung für die Durchführung des Tests zu stimulieren, ist eine große Herausforderung.
- Im Falle eines Defekts ist die Ursachenanalyse eine große Herausforderung.
- Da sich die Anwendungen in einem Netzwerk befinden, kann es vorkommen, dass das Netzwerk ausfällt. Aus diesem Grund sind auch Tests betroffen.
Wie kann ich diese Herausforderungen bewältigen?
1) Versuchen Sie, die fortgeschrittenen Testtechniken wie:
- OATS (Orthogonal Array Testtechnik)
- Zustandsübergangsdiagramme,
- Ursache-Wirkungs-Diagramme
- Äquivalenzportionierung und Randwertanalyse.
Mithilfe dieser Techniken können Sie die gegenseitige Abhängigkeit zwischen den Anwendungen ermitteln und die Testfälle / -bedingungen ermitteln, die eine maximale Abdeckung gewährleisten.
zwei) Versuchen Sie, einige historische Daten zu identifizieren, z. B. unter welchen Umständen die Systeme ausgefallen sind und wie lange es dauert, bis sie wieder in Betrieb sind. Versuchen Sie in diesem Fall, die Szenarien auszuführen, deren Anwendungen nicht betroffen sind, oder nutzen Sie die Zeit, um die Szenarien zu dokumentieren und die Ergebnisse zu melden. Berücksichtigen Sie diese historischen Daten immer als Eingabe für Ihre Schätzung und planen Sie entsprechend, wenn Sie die Tests planen oder planen.
3) PLANEN - - Verwenden Sie historische Daten, vergangene Erfahrungen, Fähigkeiten des Teams und Umweltfaktoren, um die Strategie der Tests zu identifizieren. Je besser Ihr Plan ist, desto besser wäre Ihre Ausführung.
4) Beginnen Sie mit der Vorbereitung der Umgebung, bevor Ihre eigentliche Ausführung beginnt. Planen Sie natürlich Ihre Schritte, wenn Sie die Umgebung vorbereiten. Stellen Sie sicher, dass Ihre Umgebung zu Beginn Ihrer Ausführung vollständig eingerichtet und betriebsbereit ist.
5) Stellen Sie vor Beginn des IOT sicher, dass die einzelnen Anwendungen ohne Fehler vollständig funktionsfähig getestet wurden. Im Falle eines Defekts müssten Sie dann nur nach den Umgebungsfaktoren suchen, die zu einem Fehler geführt haben.
6) Planen Sie Ihre Aktivität, wie in Punkt 2 erläutert. Wenn es sich um einen geplanten Ausfall handelt, sollten Sie diese Ausfallzeit bei der Planung Ihrer Tests berücksichtigen.
Interoperabilitätstest auf Mobiltelefonen:
In Mobiles führen wir Interoperabilitätstests durch, wenn eine neue App ( Mobile Applikation ) wird gestartet. Bei der Planung dieser Tests auf Mobilgeräten müssen viele Bereiche berücksichtigt werden:
- Die auf dem Markt erhältlichen Arten von Mobilgeräten sind riesig. Sie müssten auflisten, welche Arten von Geräten Sie für Ihre Tests in Betracht ziehen würden. Sie müssten einen Gerätetyp mit dem unterstützten Betriebssystem koppeln.
- Alle mobilen Betriebssysteme sind in verschiedenen Programmiersprachen entwickelt. Daher muss die App gegen alle Variationen des Betriebssystems getestet werden.
- Verständnis der rechtlichen Faktoren und regionalen Verträge.
- Größe / Auflösung der verschiedenen Geräte sind unterschiedlich.
- Die Auswirkungen auf die mobilen integrierten Apps müssen ebenfalls berücksichtigt werden.
Um IOT auf Mobiltelefonen ausführen zu können, müssen Sie ein RTM planen und erstellen, genau wie wir es für einen computergestützten Anwendungstest getan haben.
Die Absicht, Strategie, Risiken und Ausführung wären die gleichen, aber die Werkzeuge und Techniken wäre anders bei Handys.
Fazit:
Interoperabilitätstests sind eine große Aufgabe. Diese Technik erfordert eine ordnungsgemäße Planung, die parallel zu Beginn der Systemtestplanung beginnen sollte.
Es gibt viele Faktoren, die bei der Ausführung dieser Technik berücksichtigt werden müssen. Denken Sie daran, genügend Zeit für die Fehlerbehebung und den erneuten Test zu haben, da dies ein großer Aufwand ist und Vorkehrungen für die Nachverfolgung von Fehlern getroffen werden sollten.
Dies kann dazu führen, dass Sie möglicherweise nicht 100% erreichen Abdeckung Wir sollten jedoch klug genug sein, unsere Fälle so auszuwählen, dass die meisten Anwendungen mithilfe guter Testfallschreibtechniken in einem einzigen Ablauf abgedeckt werden.
Ich hoffe, dieser Artikel war hilfreich, um die Interoperabilitätstesttechnik zu verstehen. Teilen Sie uns Ihre Fragen / Kommentare mit.
Literatur-Empfehlungen
- Funktionstests gegen nichtfunktionale Tests
- Testhandbuch für die Sicherheit von Webanwendungen
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Portability Testing Guide mit praktischen Beispielen
- Alpha-Tests und Beta-Tests (eine vollständige Anleitung)
- Arten von Softwaretests: Verschiedene Testtypen mit Details
- Was ist Lokalisierungstest und Internationalisierungstest (einfache Anleitung)
- Testen von Primer eBook Download