Was ist Konfigurationstest? Beispieltestfälle
⚡ Intelligente Zusammenfassung
Bei Konfigurationstests wird eine Anwendung auf verschiedenen Kombinationen von Software und Hardware ausgeführt, sodass ein Team bestätigen kann, dass die funktionalen Anforderungen überall noch erfüllt sind und die optimale Konfiguration für die Veröffentlichung ermitteln kann.
Konfigurationstests
Konfigurationstests ist eine Softwaretesttechnik, bei der die Anwendung mit verschiedenen Kombinationen von Software und Hardware getestet wird, um die funktionalen Anforderungen zu bewerten und die optimalen Konfigurationen zu finden, unter denen die Anwendung fehlerfrei funktioniert.
Eine Konfiguration ist jede Kombination, die das Produkt unterstützen muss: eine Betriebssystemversion, ein Browser, eine Datenbankversion, ein Treiber, eine Speichergröße oder ein angeschlossenes Peripheriegerät. Es ist sinnvoll, dies zu trennen von KompatibilitätstestsDie Prüfung untersucht, ob das Produkt mit anderer Software und Plattformen kompatibel ist. Konfigurationstests stellen eine spezifischere Frage: Funktioniert derselbe Build noch korrekt, wenn sich die unterstützte Konfiguration ändert?
Beispiel für einen Konfigurationstest
Betrachten wir eine Desktop-Anwendung als praktisches Beispiel.
Desktop-Anwendungen werden üblicherweise in 2- oder 3-Tier-Architektur aufgebaut. Nehmen wir beispielsweise eine 3-Tier-Desktop-Anwendung, die in … entwickelt wurde. ASP.Netto, bestehend aus einem Client, einem Business Logic Server und einem Datenbankserver, wobei jede Komponente die unten aufgeführten Plattformen unterstützt.
- Kundenplattform – Windows XP Windows 7, Windows 8 und so weiter
- Serverplattform – Windows Server 2008, Windows Server 2008 R2, Windows Server 2012 R2
- Datenbank - SQL Server 2008, SQL Server 2008 R2, SQL Server 2012 usw.
Der Tester muss Client, Server und Datenbank gemeinsam über alle Plattformen und Datenbankversionen hinweg testen, um zu bestätigen, dass die Anwendung korrekt funktioniert und bei keiner unterstützten Kombination fehlschlägt.
Konfigurationstests beschränken sich nicht auf Software. Sie gelten auch für Hardware, weshalb der Hardware-Teil als Hardware-Konfigurationstest bezeichnet wird: Drucker, Scanner, Webcams und ähnliche Geräte, die die zu testende Anwendung unterstützen muss. Die folgende Matrix zeigt, wie diese Kombinationen vor Testbeginn angeordnet sind.
Voraussetzungen für Konfigurationstests
Bevor der Konfigurationstest für ein Projekt beginnen kann, müssen drei Voraussetzungen erfüllt sein.
- Erstellung einer Matrix, die die verschiedenen Kombinationen von Software- und Hardwarekonfigurationen auflistet
- Diese Konfigurationen sollten priorisiert werden, da es unrealistisch ist, jede einzelne zu testen.
- Testen jeder Konfiguration in der durch diese Priorisierung festgelegten Reihenfolge
Ziele des Konfigurationstests
Die Konfigurationstests zielen darauf ab, Folgendes zu erreichen.
- Überprüfen Sie die Anwendung anhand ihrer Konfigurierbarkeitsanforderungen.
- Man kann absichtlich Fehler verursachen, um Mängel aufzudecken, die bei herkömmlichen Tests übersehen werden, beispielsweise durch Ändern regionaler Einstellungen wie Zeitzone, Sprache oder Datumsformat.
- Ermitteln Sie die optimale Konfiguration der zu testenden Anwendung.
- Analysieren Sie die Systemleistung bei Änderungen der Hardware-Ressourcen, z. B. beim Hinzufügen von Load Balancern, beim Erhöhen oder Verringern des Arbeitsspeichers oder beim Anschluss verschiedener Druckermodelle.
- Analysieren Sie die Systemeffizienz im Hinblick auf die Priorisierung und beurteilen Sie, wie gut die Tests die verfügbaren Ressourcen genutzt haben, um diese optimale Konfiguration zu erreichen.
- Überprüfen Sie das System in einer geografisch verteilten Umgebung, beispielsweise mit dem Server an einem Standort und den Clients an einem anderen, wobei das System unabhängig von den lokalen Systemeinstellungen funktionieren sollte.
- Überprüfen Sie, wie leicht sich Fehler reproduzieren lassen, wenn sich die Konfiguration ändert.
- Bestätigen Sie, dass die Antragselemente erhalten bleiben tracdurch ordnungsgemäße Dokumentation und klar identifizierbare Versionsaufzeichnungen möglich.
- Stellen Sie sicher, dass die Anwendungselemente während des gesamten Prozesses handhabbar bleiben. Lebenszyklus der Softwareentwicklung
So führen Sie Konfigurationstests durch
Die Strategie hängt davon ab, welcher der beiden Konfigurationstesttypen in den Anwendungsbereich fällt.
- Testen der Softwarekonfiguration
- Testen der Hardwarekonfiguration
Testen der Softwarekonfiguration
Bei Softwarekonfigurationstests wird die zu testende Anwendung auf verschiedenen Betriebssystemen, Softwareupdates und Abhängigkeitsversionen ausgeführt. Dies ist zeitaufwändig, da in jedem Testdurchlauf die betreffende Software installiert und deinstalliert werden muss.
Eine gängige Methode, diese Kosten zu senken, besteht darin, Tests durchzuführen. virtuelle MaschinenEine virtuelle Maschine ist eine softwarebasierte Umgebung, die sich wie physische Hardware verhält. Der Tester arbeitet also wie auf einem realen Rechner, während die Konfiguration selbst veränderbar ist. Virtuelle Maschinen simulieren reale Konfigurationen ausreichend genau für die meisten Funktionsprüfungen.
Anstatt die Anwendung auf mehreren physischen Maschinen zu installieren und zu deinstallieren, wird sie auf einer virtuellen Maschine installiert und die Tests werden von dort aus fortgesetzt. Der parallele Betrieb mehrerer virtueller Maschinen, die jeweils aus einem Snapshot wiederhergestellt werden, vereinfacht die Arbeit erheblich.
Das Testen der Softwarekonfiguration kann normalerweise beginnen, wenn
- Die zu testenden Konfigurierbarkeitsanforderungen sind spezifiziert
- Das Test Umgebung ist bereit
- Das Testteam ist in Konfigurationstests geschult.
- Die veröffentlichte Version hat die Unit- und Integrationstests bestanden.
Das typische Teststrategie Eine Strategie besteht darin, die funktionale Testsuite für jede Softwarekonfiguration auszuführen und zu überprüfen, ob die Anwendung wie vorgesehen und fehlerfrei funktioniert. Eine zweite Strategie ist, Testfälle absichtlich fehlschlagen zu lassen und zu prüfen, wie effizient das System damit umgeht.
Ejemplo:
Nehmen wir eine Banking-Anwendung, die in verschiedenen Browsern getestet werden muss. In einer Umgebung, in der alle Voraussetzungen erfüllt sind, kann sie die Unit-Tests und Tests problemlos bestehen. Integrationstests im Testlabor.
Wird dieselbe Anwendung beim Kunden installiert, kann sie fehlschlagen, weil auf den Rechnern Software-Updates oder die Versionen der Abhängigkeiten fehlen, von denen die Anwendung direkt oder indirekt abhängt. Indem man die Tests absichtlich fehlschlagen lässt, indem man bestimmte Konfigurationsanforderungen entfernt und anschließend erneut testet, lässt sich diese Art von Fehler aufdecken, bevor der Kunde ihn bemerkt. Der folgende Screenshot zeigt, wie ein solcher konfigurationsabhängiger Fehler in einer kontrollierten Umgebung reproduziert wird.
Testen der Hardwarekonfiguration
Hardwarekonfigurationstests werden im Allgemeinen in einem Labor durchgeführt, in dem sich physische Maschinen mit unterschiedlicher Hardware befinden.
Bei jeder Veröffentlichung eines Builds wird die Software auf allen diesen Maschinen installiert und die Testsuite auf jeder einzelnen ausgeführt, um zu bestätigen, dass die Anwendung mit dem angeschlossenen Gerät funktioniert.
Diese Aufgabe erfordert erheblichen Aufwand: die Installation der Software auf jedem Rechner, den Anschluss der Hardware und anschließend die manuelle Ausführung der Suite oder deren Automatisierung.
Auch die Art der zu testenden Hardware muss spezifiziert werden. Da Computerhardware und Peripheriegeräte so vielfältig sind, ist es unmöglich, alle abzudecken. Daher analysiert der Tester, auf welche Geräte die Nutzerbasis tatsächlich angewiesen ist, und testet entsprechend dieser Priorisierung.
Beispieltestfälle
Betrachten wir ein Bankszenario, das auf Hardwarekompatibilität getestet wurde. Eine Bankanwendung, die mit einer Banknotenzählmaschine verbunden ist, muss mit verschiedenen Modellen wie Rolex, Strob, Maxsell und StoK funktionieren.
Musteranfrage Testfälle Für die Banknotenzählmaschine sind folgende Teile erforderlich.
- Überprüfen Sie die Verbindung zwischen der Anwendung und dem Rolex-Modell, wenn die Voraussetzungen NICHT installiert sind.
- Überprüfen Sie die Verbindung zwischen der Anwendung und dem Rolex-Modell, sobald die Voraussetzungen erfüllt sind.
- Überprüfen Sie, ob das System die Geldscheine korrekt zählt.
- Überprüfen Sie, wie das System einen Zählfehler meldet.
- Überprüfen Sie den Umgang mit manipulierten Banknoten.
- Überprüfen Sie die Antwortzeiten
- Überprüfen Sie, ob gefälschte Banknoten erkannt werden.
Diese Fälle beziehen sich jeweils auf ein einzelnes Modell. Jedes weitere auf dem Markt befindliche Modell muss in einem Testlabor eingerichtet und auf dieselbe Weise getestet werden, was intern selten praktikabel ist. Die Auslagerung der Hardware-Konfigurationstests an ein spezialisiertes Unternehmen ist daher oft die realistischere Option.


