Was ist Konfigurationstest? Beispieltestfälle
Konfigurationstests
Konfigurationstests ist eine Softwaretesttechnik, bei der die Softwareanwendung mit mehreren Kombinationen von Software und Hardware getestet wird, um die funktionalen Anforderungen zu bewerten und optimale Konfigurationen herauszufinden, unter denen die Softwareanwendung ohne Mängel oder Mängel funktioniert.
Wie oben erläutert, handelt es sich beim Konfigurationstest um einen Softwaretest, bei dem die zu testende Anwendung mit mehreren Kombinationen aus Software und Hardware getestet werden muss.
Beispiel für einen Konfigurationstest
Lassen Sie uns dies anhand eines Beispiels einer Desktop-Anwendung verstehen:
Im Allgemeinen sind Desktop-Anwendungen zweischichtig oder dreischichtig. Hier betrachten wir eine dreischichtige Desktop-Anwendung, die mit entwickelt wurde Asp.Net und besteht aus Client, Business Logic Server und Datenbankserver, wobei jede Komponente die unten genannten Plattformen unterstützt.
- Kundenplattform – Windows XP, Windows 7-Betriebssystem, Windows 8-Betriebssystem usw.
- Serverplattform – Windows Server 2008 R2,Windows Server 2008 R2, Windows Server 2012R2
- Datenbank –SQL Server 2008, SQL Server 2008R2, SQL Server 2012 usw.
Ein Tester muss die Kombination aus Client, Server und Datenbank mit Kombinationen der oben genannten Plattformen und Datenbankversionen testen, um sicherzustellen, dass die Anwendung ordnungsgemäß funktioniert und nicht ausfällt.
Konfigurationstests sind nicht nur auf Software beschränkt, sondern auch auf Hardware anwendbar, weshalb sie auch als Hardwarekonfigurationstests bezeichnet werden, bei denen wir verschiedene Hardwaregeräte wie Drucker, Scanner, Webcams usw. testen, die die zu testende Anwendung unterstützen.
Voraussetzungen für Konfigurationstests
Bevor wir mit dem Konfigurationstest beginnen, müssen wir für jedes Projekt einige Voraussetzungen erfüllen
- Erstellung einer Matrix, die aus verschiedenen Kombinationen von Software- und Hardwarekonfigurationen besteht
- Priorisierung der Konfigurationen, da es schwierig ist, alle Konfigurationen zu testen
- Testen Sie jede Konfiguration basierend auf der Priorisierung.
Ziele des Konfigurationstests
Die Ziele des Konfigurationstests sind:
- Validierung der Anwendung, um festzustellen, ob sie die Konfigurierbarkeitsanforderungen erfüllt
- Manuelles Verursachen von Fehlern, die bei der Identifizierung von Fehlern helfen, die beim Testen nicht effizient gefunden werden (z. B. Ändern der regionalen Einstellungen des Systems wie Zeitzone, Sprache, Datum-Uhrzeit-Formate usw.)
- Bestimmen Sie eine optimale Konfiguration der zu testenden Anwendung.
- Analysieren der Systemleistung durch Hinzufügen oder Ändern von Hardwareressourcen wie Load Balancern, Erhöhen oder Verringern der Speichergröße, Anschließen verschiedener Druckermodelle usw.
- Analyse der Systemeffizienz basierend auf der Priorisierung, wie effizient die Tests mit den verfügbaren Ressourcen durchgeführt wurden, um die optimale Systemkonfiguration zu erreichen.
- Überprüfung des Systems in einer geografisch verteilten Umgebung, um zu überprüfen, wie effektiv das System funktioniert. Zum Beispiel: Server an einem anderen Standort und Clients an einem anderen Standort, das System sollte unabhängig von den Systemeinstellungen einwandfrei funktionieren.
- Überprüfen, wie leicht die Fehler unabhängig von Konfigurationsänderungen reproduzierbar sind.
- Sicherstellung der Rückverfolgbarkeit der Anwendungselemente durch ordnungsgemäße Dokumentation und Pflege der leicht identifizierbaren Versionen.
- Überprüfen, wie verwaltbar die Anwendungselemente im gesamten Projekt sind Lebenszyklus der Softwareentwicklung.
So führen Sie Konfigurationstests durch
In diesem Abschnitt besprechen wir die Strategie, die für Konfigurationstesttypen befolgt werden muss. Wie unten erwähnt, gibt es zwei Arten von Konfigurationstests
- Testen der Softwarekonfiguration
- Testen der Hardwarekonfiguration
Testen der Softwarekonfiguration
Beim Softwarekonfigurationstest wird die zu testende Anwendung mit mehreren Betriebssystemen, unterschiedlichen Softwareaktualisierungen usw. getestet. Der Softwarekonfigurationstest ist sehr zeitaufwändig, da die Installation und Deinstallation verschiedener Software, die für den Test verwendet wird, Zeit in Anspruch nimmt.
Einer der Ansätze zum Testen der Softwarekonfiguration ist das Testen auf virtuellen Maschinen. Eine virtuelle Maschine ist eine Umgebung, die auf Software installiert ist und sich wie eine physische Hardware verhält. Benutzer haben das gleiche Gefühl wie bei einer physischen Maschine. Virtual Machines simuliert Echtzeitkonfigurationen.
Anstatt die Software zeitaufwändig auf mehreren physischen Maschinen zu installieren und zu deinstallieren, ist es immer besser, die Anwendung/Software in der virtuellen Maschine zu installieren und mit dem Testen fortzufahren. Dieser Prozess kann durch mehrere durchgeführt werden virtuelle Maschinen, was die Arbeit eines Testers vereinfacht
Das Testen der Softwarekonfiguration kann normalerweise beginnen, wenn
- Zu testende Konfigurierbarkeitsanforderungen werden spezifiziert
- Die Testumgebung ist bereit
- Das Testteam ist gut in Konfigurationstests geschult
- Der freigegebene Build hat den Unit- und Integrationstest bestanden
Charakteristische Teststrategie Was zum Testen des Softwarekonfigurationstests befolgt wird, besteht darin, die Funktionstestsuite über mehrere Softwarekonfigurationen hinweg auszuführen, um zu überprüfen, ob die zu testende Anwendung wie gewünscht und ohne Mängel oder Fehler funktioniert.
Eine andere Strategie besteht darin, sicherzustellen, dass das System ordnungsgemäß funktioniert, indem die Testfälle manuell fehlgeschlagen werden und die Effizienz überprüft wird.
Ejemplo:
Angenommen, es gibt eine Bankanwendung, die auf ihre Kompatibilität mit mehreren Browsern getestet werden muss. Wenn die Anwendung in einer Umgebung gehostet wird, in der alle Voraussetzungen erfüllt sind, besteht sie möglicherweise die Einheit und Integrationstests im Testlabor.
Wenn jedoch dieselbe Anwendung auf einem Client-Standort installiert ist und auf den Computern einige Software-Updates oder Versionen fehlen, von denen die Anwendung direkt oder indirekt abhängt, besteht die Möglichkeit, dass die Anwendung ausfällt. Um eine solche Situation zu vermeiden, wird immer empfohlen, die Tests manuell fehlzuschlagen, indem einige der Konfigurierbarkeitsanforderungen entfernt werden, und dann mit dem Test fortzufahren.
Testen der Hardwarekonfiguration
Hardware-Konfigurationstests werden im Allgemeinen in Laboren durchgeführt, wo wir physische Maschinen mit unterschiedlicher Hardware finden.
Immer wenn ein Build veröffentlicht wird, muss die Software auf allen physischen Maschinen installiert werden, an denen die Hardware angeschlossen ist, und die Testsuite muss auf jeder Maschine ausgeführt werden, um sicherzustellen, dass die Anwendung einwandfrei funktioniert.
Um die oben genannte Aufgabe auszuführen, ist ein erheblicher Aufwand erforderlich, um die Software auf jedem Computer zu installieren, die Hardware anzuschließen und den oben genannten Prozess manuell auszuführen oder sogar zu automatisieren und die Testsuite auszuführen.
Außerdem geben wir beim Hardware-Konfigurationstest die Art der zu testenden Hardware an, und es gibt eine Menge Computerhardware und Peripheriegeräte, die es unmöglich machen, alle davon auszuführen. Daher liegt es in der Pflicht des Testers, zu analysieren, welche Hardware von Benutzern am häufigsten verwendet wird, und zu versuchen, die Tests auf der Grundlage der Priorisierung durchzuführen.
Beispieltestfälle
Betrachten Sie ein Bankszenario, um die Hardwarekompatibilität zu testen. Eine Bankanwendung, die mit der Banknotenzählmaschine verbunden ist, muss mit verschiedenen Modellen wie Rolex, Strob, Maxsell, StoK usw. getestet werden.
Nehmen wir einige Beispieltestfälle, um die Notenzählmaschine zu testen
- Überprüfen der Verbindung der Anwendung mit dem Rolex-Modell, wenn die Voraussetzungen NICHT installiert sind
- Überprüfen der Verbindung der Anwendung mit dem Rolex-Modell, wenn die Voraussetzungen installiert sind
- Überprüfen Sie, ob das System die Banknoten korrekt zählt
- Überprüfen Sie, ob das System die Banknoten falsch zählt
- Überprüfung der manipulierten Banknoten
- Überprüfung der Reaktionszeiten
- Überprüfen, ob die gefälschten Banknoten erkannt werden und so weiter
Die oben genannten Testfälle gelten für ein Modell und müssen mit allen auf dem Markt erhältlichen Modellen getestet werden, indem sie in einem Testlabor eingerichtet werden, was schwierig ist. Daher ist es ratsam, die Prüfung der Hardwarekonfiguration an Organisationen auszulagern, die darauf spezialisiert sind.
Zusammenfassung
In der Softwareentwicklung sollte Konfigurationstests die gleiche Bedeutung beigemessen werden wie anderen Testarten. Ohne die Durchführung von Konfigurationstests ist es schwierig, die optimale Systemleistung zu analysieren, und außerdem kann es bei der Software zu Kompatibilitätsproblemen kommen, auf denen sie ausgeführt werden soll.