Konfigurationstests
Konfigurationstests sind Softwaretesttechniken, bei denen die Softwareanwendung mit mehreren Kombinationen von Software und Hardware getestet wird, um die funktionalen Anforderungen zu bewerten und optimale Konfigurationen zu ermitteln, 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 von Software und Hardware getestet werden muss.
In diesem Tutorial lernen Sie:
- Was ist Konfigurationstest?
- Beispiel für einen Konfigurationstest
- Voraussetzungen für Konfigurationstests
- Ziele des Konfigurationstests
- So führen Sie Konfigurationstests durch
- Beispieltestfälle
Beispiel für einen Konfigurationstest
Lassen Sie uns dies anhand eines Beispiels einer Desktop-Anwendung verstehen:
Im Allgemeinen bestehen Desktop-Anwendungen aus zwei oder drei Ebenen. Hier wird eine dreistufige Desktop-Anwendung betrachtet, die mit Asp.Net entwickelt wurde und aus Client, Business Logic Server und Datenbankserver besteht, wobei jede Komponente die unten genannten Plattformen unterstützt.
- Client-Plattform - 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 fehlschlägt.
Konfigurationstests sind nicht nur auf Software beschränkt, sondern gelten auch für Hardware. Aus diesem Grund wird sie auch als Hardwarekonfigurationstest bezeichnet, bei dem verschiedene Hardwaregeräte wie Drucker, Scanner, Webkameras usw. getestet werden, 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
- Priorisieren der Konfigurationen als schwierig, alle Konfigurationen zu testen
- Testen jeder Konfiguration basierend auf der Priorisierung.
Ziele des Konfigurationstests
Die Ziele des Konfigurationstests sind:
- Überprüfen der Anwendung, um festzustellen, ob sie die Konfigurationsanforderungen erfüllt
- Manuelles Verursachen von Fehlern, die beim Identifizieren der Fehler helfen, die beim Testen nicht effizient gefunden werden (Beispiel: Ändern der regionalen Einstellungen des Systems wie Zeitzone, Sprache, Datums- und Uhrzeitformate usw.)
- Bestimmen Sie eine optimale Konfiguration der zu testenden Anwendung.
- Analysieren der Systemleistung durch Hinzufügen oder Ändern von Hardwareressourcen wie Load Balancers, 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 arbeitet.
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 den Konfigurationsänderungen reproduzierbar sind.
- Sicherstellen, wie nachverfolgbar die Anwendungselemente sind, indem die leicht identifizierbaren Versionen ordnungsgemäß dokumentiert und verwaltet werden.
- Überprüfen, wie verwaltbar die Anwendungselemente während des gesamten Softwareentwicklungslebenszyklus sind.
So führen Sie Konfigurationstests durch
In diesem Abschnitt werden wir die Strategie diskutieren, die für Konfigurationstesttypen befolgt werden muss, und es gibt zwei Arten von Konfigurationstests, wie unten erwähnt
- Testen der Softwarekonfiguration
- Testen der Hardwarekonfiguration
Testen der Softwarekonfiguration
Beim Testen der Softwarekonfiguration wird die zu testende Anwendung mit mehreren Betriebssystemen, verschiedenen Softwareupdates usw. getestet. Das Testen der Softwarekonfiguration ist sehr zeitaufwändig, da die Installation und Deinstallation verschiedener für den Test verwendeter Software einige Zeit in Anspruch nimmt.
Einer der Ansätze zum Testen der Softwarekonfiguration ist das Testen auf virtuellen Maschinen. 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 eine physische Maschine. Virtuelle Maschinen simulieren Echtzeitkonfigurationen.
Anstatt die Software auf mehreren physischen Maschinen zu installieren und zu deinstallieren, was zeitaufwändig ist, ist es immer besser, die Anwendung / Software auf der virtuellen Maschine zu installieren und mit dem Testen fortzufahren. Dieser Prozess kann mit mehreren virtuellen Maschinen ausgeführt werden, was die Arbeit eines Testers vereinfacht
Das Testen der Softwarekonfiguration kann normalerweise beginnen, wenn
- Die zu testenden Konfigurierbarkeitsanforderungen sind angegeben
- Testumgebung ist bereit
- Das Testteam ist in Konfigurationstests gut geschult
- Build freigegeben ist Einheit und Integrationstest bestanden
Eine typische Teststrategie zum Testen des Softwarekonfigurationstests besteht darin, die Funktionstestsuite über mehrere Softwarekonfigurationen hinweg auszuführen, um zu überprüfen, ob die zu testende Anwendung wie gewünscht ohne Fehler oder Fehler funktioniert.
Eine andere Strategie besteht darin, sicherzustellen, dass das System einwandfrei funktioniert, indem die Testfälle manuell fehlgeschlagen und die Effizienz überprüft werden.
Beispiel:
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, um die Einheit und den Integrationstest im Testlabor zu bestehen.
Wenn dieselbe Anwendung jedoch auf einem Client installiert ist und auf den Computern einige Softwareupdates oder die Versionen fehlen, von denen die Anwendung direkt oder indirekt abhängig ist, besteht die Möglichkeit, dass die Anwendung fehlschlägt. Um diese Situation zu vermeiden, wird immer empfohlen, die Tests manuell zu bestehen, indem einige der Konfigurationsanforderungen entfernt werden, und dann mit dem Testen fortzufahren.
Testen der Hardwarekonfiguration
Hardwarekonfigurationstests werden im Allgemeinen in Labors durchgeführt, in denen physische Maschinen mit unterschiedlicher Hardware gefunden werden.
Jedes Mal, wenn ein Build veröffentlicht wird, muss die Software auf allen physischen Computern installiert werden, auf denen die Hardware angeschlossen ist, und die Testsuite muss auf jedem Computer ausgeführt werden, um sicherzustellen, dass die Anwendung ordnungsgemäß 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.
Während wir einen Hardwarekonfigurationstest durchführen, geben wir außerdem den Typ der zu testenden Hardware an, und es gibt viele Computerhardware und Peripheriegeräte, die es unmöglich machen, alle auszuführen. Daher ist es Aufgabe des Testers, zu analysieren, welche Hardware hauptsächlich von Benutzern verwendet wird, und zu versuchen, die Tests anhand der Priorisierung durchzuführen.
Beispieltestfälle
Betrachten Sie ein Bankenszenario, um die Hardwarekompatibilität zu testen. Eine Bankanwendung, die mit der Note Counting Machine verbunden ist, muss mit verschiedenen Modellen wie Rolex, Strob, Maxsell, StoK usw. getestet werden.
Nehmen wir einige Beispiel-Testfä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 Noten richtig zählt
- Überprüfen Sie, ob das System die Notizen falsch zählt
- Überprüfen der manipulierten Notizen
- Überprüfen der Antwortzeiten
- Überprüfen, ob die gefälschten Notizen erkannt wurden und so weiter
Die oben genannten Testfälle gelten für ein Modell, und das gleiche muss mit allen auf dem Markt erhältlichen Modellen getestet werden, indem sie in einem schwierigen Testlabor eingerichtet werden. Daher ist es ratsam, die Hardwarekonfigurationstests an Organisationen auszulagern, die sich darauf spezialisiert haben.
Zusammenfassung:
In der Softwareentwicklung sollten Konfigurationstests genauso wichtig sein wie andere Testtypen. Ohne Konfigurationstests ist es schwierig, die optimale Systemleistung zu analysieren, und auch bei Software kann es zu Kompatibilitätsproblemen kommen, auf denen sie ausgeführt werden soll.