Testumgebung im Softwaretest
Was ist eine Testumgebung?
Eine Testumgebung ist eine Einrichtung aus Software und Hardware, mit der die Testteams Testfälle ausführen können. Mit anderen Worten: Es unterstützt die Testausführung mit konfigurierter Hardware, Software und Netzwerk.
Das Testbett oder die Testumgebung wird gemäß den Anforderungen der zu testenden Anwendung konfiguriert. In einigen Fällen kann das Testbett eine Kombination aus der Testumgebung und den darin verarbeiteten Testdaten sein.
Das Einrichten einer richtigen Testumgebung gewährleistet den Erfolg von Softwaretests. Jegliche Mängel in diesem Prozess können für den Kunden zu zusätzlichen Kosten und Zeitaufwand führen.
Einrichtung der Testumgebung: Schlüsselbereiche
Für die Testumgebung ist ein wichtiger Bereich einzurichten:
- System und Anwendungen
- Testdaten
- Datenbankserver
- Front-End-Laufumgebung
- Client-Betriebssystem
- Browser
- Hardware umfasst Server Operatungssystem
- Network
- Erforderliche Dokumentation wie Referenzdokumente/Konfigurationshandbücher/Installationshandbücher/Benutzerhandbücher
Prozess der Einrichtung der Softwaretestumgebung
Tests beschränken sich auf das, was getestet werden kann und was nicht getestet werden sollte.
Folgende Personen sind am Aufbau der Testumgebung beteiligt
- Systemadministratoren,
- Entwicklung
- Tester
- Manchmal Benutzer oder Technikfreaks mit einer Affinität zum Testen.
Die Testumgebung erfordert die Einrichtung verschiedener unterschiedlicher Bereiche wie:
Schritt 1) Einrichtung des Testservers
Es darf nicht jeder Test auf einem lokalen Rechner ausgeführt werden. Möglicherweise muss ein Testserver eingerichtet werden, der Anwendungen unterstützen kann.
Zum Beispiel hat Fedora eingerichtet für PHP, Java-basierte Anwendungen mit oder ohne Mailserver, Cron-Setup, Java-basierte Anwendungen usw.
Schritt 2) Netzwerk
Netzwerk gemäß Testanforderung eingerichtet. Es enthält,
- Internet einrichten
- LAN-WLAN-Einrichtung
- Einrichtung eines privaten Netzwerks
Dadurch wird sichergestellt, dass die während des Tests auftretende Überlastung keine Auswirkungen auf andere Mitglieder hat. (Entwickler, Designer, Content-Autoren usw.)
Schritt 3) PC-Setup testen
Für Webtests müssen Sie möglicherweise unterschiedliche Browser für unterschiedliche Tester einrichten. Für Desktop-Anwendungen benötigen Sie verschiedene Arten von Betriebssystemen für verschiedene Tester-PCs.
Beispielsweise kann das Testen von Windows Phone-Apps Folgendes erfordern:
- Visual Studio-Installation
- Windows Telefon-Emulator
- Alternativ kann dem Tester ein Windows Phone zugewiesen werden.
Schritt 4) Fehlerberichterstattung
Den Testern sollten Tools zur Fehlerberichterstattung zur Verfügung gestellt werden.
Schritt 5) Testdaten für die Testumgebung erstellen
Viele Unternehmen nutzen eine separate Testumgebung, um das Softwareprodukt zu testen. Der übliche Ansatz besteht darin, Produktionsdaten zum Testen zu kopieren. Dies hilft dem Tester, die gleichen Probleme wie bei einem Live-Produktionsserver zu erkennen, ohne die Produktionsdaten zu beschädigen.
Der Ansatz zum Kopieren von Produktionsdaten in Testdaten umfasst Folgendes:
- Richten Sie Produktionsjobs ein, um die Daten in eine gemeinsame Testumgebung zu kopieren
- Alle PII (persönlich identifizierbare Informationen) werden zusammen mit anderen sensiblen Daten geändert. Die PII werden durch logisch korrekte, aber nicht personenbezogene Daten ersetzt.
- Entfernen Sie Daten, die für Ihren Test irrelevant sind.
Tester oder Entwickler können dies in ihre individuelle Testumgebung kopieren. Sie können es entsprechend ihren Anforderungen ändern.
Datenschutz ist das Hauptproblem bei Kopierproduktionsdaten. Um Datenschutzprobleme zu lösen, sollten Sie sich verschleierte und anonymisierte Testdaten ansehen.
Für die Anonymisierung von Daten können zwei Ansätze verwendet werden:
- BlackList: Bei diesem Ansatz bleiben alle Datenfelder unverändert. Mit Ausnahme der von den Benutzern angegebenen Felder.
- WhiteList: Bei diesem Ansatz werden standardmäßig alle Datenfelder anonymisiert. Mit Ausnahme einer Liste von Feldern, die kopiert werden dürfen. Ein Feld auf der Whitelist bedeutet, dass es in Ordnung ist, die Daten so zu kopieren, wie sie sind, und dass keine Anonymisierung erforderlich ist.
Wenn Sie Produktionsdaten verwenden, müssen Sie außerdem klug sein, wie Sie die Daten beschaffen. Abfragen der Datenbank mit SQL Skript ist ein effektiver Ansatz.
Testumgebungsmanagement
Das Test Environment Management befasst sich mit der Wartung und Instandhaltung des Prüfstands.
Zu den Aktivitäten der Testumgebungsverwaltungsfunktion gehören:
- Pflege eines zentralen Repositorys mit allen aktualisierten Versionen der Testumgebungen.
- Testumgebungsmanagement gemäß den Anforderungen des Testteams.
- Gemäß den neuen Anforderungen werden neue Umgebungen geschaffen
- Überwachung der Umgebungen
- Aktualisieren/Löschen veralteter Testumgebungen
- Untersuchung von Umweltproblemen
- Koordination bis zur Problemlösung.
Checkliste für Testumgebungen
Hardware
- Prüfen Sie, ob die für die Prüfung erforderliche Ausrüstung vorhanden ist? Ist dies nicht der Fall, analysieren Sie die Lieferzeit!
- Prüfen Sie, ob Peripheriegeräte vorhanden sind? Wie Scanner, Spezialdrucker, Handhelds usw.
Software / Anschlüsse
- Sind die benötigten Anwendungen angegeben? Eine Anwendung wie Excel, Word, Zeichnungen usw.
- Ist für die neue Software die Testumgebung für die Organisation vorhanden? Hat die Organisation Erfahrung mit der Nutzung und Wartung der Software?
Umweltdaten
- Prüfen Sie, ob die Standard-Testdatensätze verfügbar sind? Berücksichtigen Sie mit dem Regressionstestsatz das Defekt Verwaltung, um Testdaten zu sammeln.
- Bestehen Vereinbarungen mit den Testdateneigentümern über die Testdaten? Erwägen Sie die funktionale Wartung.
Wartungstools/-prozesse
- Prüfen Sie, ob es einen einzigen Ansprechpartner für die Wartung der Testumgebung gibt? Wenn nein, erstellen Sie eine Liste aller möglichen Mitglieder, die an der Aufrechterhaltung der Testumgebung beteiligt sind. Es sollte auch ihre Kontaktinformationen enthalten.
- Ist die Einigung über die Bereitschaft und Qualität der Testumgebung erzielt worden? Zum Beispiel Akzeptanzkriterien, Wartungsanforderungen usw. Überprüfen Sie außerdem, ob andere/zusätzliche Qualitätsmerkmale für Umgebungen übereinstimmen.
- Sind alle am Wartungsprozess beteiligten Mitglieder bekannt?
Darüber hinaus müssen vor dem Einrichten der Testumgebung noch einige weitere Fragen beantwortet werden.
- Soll eine interne Testumgebung entwickelt oder ausgelagert werden?
- Soll ein interner Unternehmensstandard oder ein externer Standard (IEE, ISO usw.) befolgt werden?
- Wie lange wird die Testumgebung benötigt?
- Unterschiede zwischen Test- und Produktivsystemen und deren Auswirkungen auf die Testvalidität müssen ermittelt werden.
- Können Sie ein bestehendes Setup für andere Projekte im Unternehmen wiederverwenden?
Herausforderungen beim Aufbau des Testumgebungsmanagements
- Richtige Planung der RessourcennutzungEine ineffektive Planung der Ressourcennutzung kann sich auf die tatsächliche Leistung auswirken. Außerdem kann es zu Konflikten zwischen Teams kommen.
- Remote-UmgebungEs ist möglich, dass eine Testumgebung geografisch weit entfernt liegt. In einem solchen Fall muss sich das Testteam für verschiedene Testressourcen auf das Supportteam verlassen. (Software, Hardware und andere Probleme).
- Aufwändige RüstzeitManchmal ist der Testaufbau zu aufwändig Integrationstests.
- Gemeinsame Nutzung durch TeamsWenn die Testumgebung gleichzeitig vom Entwicklungs- und Testteam verwendet wird, werden die Testergebnisse verfälscht.
- Komplexe TestkonfigurationFür bestimmte Tests ist eine komplexe Konfiguration der Testumgebung erforderlich. Dies kann für das Testteam eine Herausforderung darstellen.
Best Practices für den Aufbau eines Testumgebungsmanagements
- Verstehen Sie die Testanforderungen gründlich und schulen Sie die Mitglieder des Testteams.
- Die Konnektivität sollte vor Beginn des Tests überprüft werden
- Überprüfen Sie die erforderliche Hardware und Software sowie Lizenzen
- Browser und Versionen
- Planen Sie die geplante Nutzung der Testumgebung.
- Automatisierungstools und ihre Konfigurationen.
Was ist ein Testbett beim Softwaretesten?
A Prüfstand für Softwaretests ist eine Software-Entwicklungsumgebung. Es ermöglicht Entwicklern, ihre Module zu testen, ohne die Live-Produktionsserver zu beeinträchtigen. Die Testumgebung ist nicht nur Entwicklern vorbehalten, sondern wird auch von Testern genutzt. Es handelt sich dabei um eine Testumgebung zum rigorosen und transparenten Testen neuer Technologien.
Zusammenfassung
- Eine Testumgebung ist eine Konfiguration aus Software und Hardware, auf der das Testteam die Tests durchführt
- Für die Testumgebung ist ein wichtiger Bereich einzurichten:
- System und Anwendungen
- Testdaten
- Datenbankserver
- Front-End-Laufumgebung usw.
- Zu den wenigen Herausforderungen beim Einrichten einer Testumgebung gehören:
- Remote-Umgebung
- Kombinierte Nutzung zwischen Teams
- Aufwändige Rüstzeit
- Ineffektive Planung der Ressourcennutzung für die Integration
- Komplexe Testkonfiguration