Testkonzept - Testinfrastruktur

Für die Durchführung effizienter und effektiver Tests ist eine angemessene Testinfrastruktur unerlässlich. Diese Infrastruktur bildet die Grundlage für die Simulation von realen Anwendungsbedingungen und ermöglicht es den Testteams, Softwarequalität und Leistungsfähigkeit umfassend zu bewerten.

Hier ist eine detaillierte Auflistung der Testinfrastruktur, die für ein umfassendes Testen notwendig sein könnte:


Testplattformen

Die Testplattformen sind ein zentraler Bestandteil der Testinfrastruktur und sollten sorgfältig ausgewählt werden, um eine breite Abdeckung der Zielumgebungen zu gewährleisten.

  • Hardware-Spezifikation (HW-Spezifikation)
    Umfasst Server, Clients, mobile Geräte, Netzwerkgeräte und andere Hardware-Komponenten, die für die Durchführung der Tests benötigt werden. Die Spezifikationen sollten die Prozessorleistung, den Speicher, die Speichergröße und andere relevante Hardwaremerkmale enthalten.

  • Software-Spezifikation (SW-Spezifikation)
    Bezieht sich auf die auf den Testplattformen installierte Software, einschließlich Betriebssysteme, Datenbanken, Webserver, Anwendungssoftware und andere Tools. Die Versionen und Konfigurationen der Software sollten genau definiert werden.

  • Netzwerk-Topologie
    Beschreibt die Konfiguration des Netzwerks, das die Testplattformen verbindet, einschließlich Router, Switches, Firewalls und anderer Netzwerkkomponenten.

  • Betriebssysteme
    Liste der Betriebssysteme, die auf den Testplattformen verwendet werden, einschließlich Versionen und Patches.

Teststandorte und Testarbeitsplätze

Die Organisation und Einrichtung von Teststandorten und Testarbeitsplätzen ist ein wesentlicher Faktor für die erfolgreiche Durchführung von Softwaretests. Insbesondere bei standortübergreifenden Tests sind die Koordination und die technische Ausstattung von großer Bedeutung.

Teststandorte

  • Geografische Standorte
    Die Standorte, an denen Tests durchgeführt werden, sollten genau dokumentiert werden. Dies können Bürostandorte des Unternehmens, Offshore-Testzentren oder remote Arbeitsplätze sein.

  • Physische und virtuelle Testlabors
    Einrichtung spezialisierter Testlabors mit notwendiger Hardware und Netzwerkzugängen. Zusätzlich können virtuelle Labors eingerichtet werden, um Flexibilität und schnelle Skalierung zu ermöglichen.

  • Datenzentren
    Informationen zu den Datenzentren, wo die Server und Speichersysteme für Testumgebungen gehostet werden, sollten verfügbar sein. Dies umfasst sowohl physische als auch Cloud-basierte Infrastrukturen.

Testarbeitsplätze

  • Arbeitsplatzkonfiguration
    Jeder Testarbeitsplatz sollte entsprechend den Anforderungen des Testprozesses ausgestattet sein. Dies beinhaltet unter anderem leistungsfähige PCs oder Laptops, mehrere Monitore für effizientes Arbeiten und spezielle Hardware für Performance-Tests.

  • Softwaretools
    Eine zuverlässige IT-Infrastruktur mit Zugang zu Testmanagement- und Automatisierungstools, Entwicklungs- und Debugging-Software und gängigen Büroanwendungen.

  • Mobile Testgeräte
    Für das Mobile Testing sind diverse mobile Endgeräte mit verschiedenen Betriebssystemversionen und Bildschirmgrößen erforderlich.

  • Netzwerkzugang
    Sichere und schnelle Netzwerkverbindungen sind unerlässlich, insbesondere wenn Cloud-basierte Testumgebungen oder Tools verwendet werden.

Testuser und Legitimationen

  • Sicherheitsrichtlinien
    Für die Legitimationen von Testusern müssen klare Sicherheitsrichtlinien definiert werden, um den unbefugten Zugang zu verhindern.

  • Berechtigungsstufen
    Die Berechtigungen sollten entsprechend der Rolle des Testers gestaffelt und dokumentiert werden. Dies erleichtert die Nachvollziehbarkeit und Überprüfung der Berechtigungskonzepte.

  • Verwaltung der Zugangsdaten
    Die Zugangsdaten für Testuser müssen sicher verwaltet werden. Hierfür eignen sich professionelle Passwort-Management-Tools.

Zusätzliche Aspekte

  • Standortübergreifende Koordination
    Bei Tests, die an verschiedenen Standorten durchgeführt werden, sind eine gute Kommunikation und Koordination unerlässlich. Hierzu sollten entsprechende Tools und regelmäßige Abstimmungen eingeplant werden.

  • Remote-Testing
    Um Remote-Testing zu ermöglichen, sollten VPN-Zugänge und Remote-Desktop-Lösungen zur Verfügung stehen.

  • Arbeitsplatzreservierung
    Für physische Testlabors kann ein Reservierungssystem erforderlich sein, um sicherzustellen, dass Testressourcen effektiv genutzt werden.

Testdaten und Testdatenbereitstellung

Die Testdaten bilden die Grundlage für realistische und effektive Testläufe. Die Anforderungen an die Testdaten variieren je nach Testtyp und umfassen in der Regel:

  • Repräsentative Daten
    Die Daten müssen typische Geschäftsvorfälle widerspiegeln, um eine realistische Testumgebung zu schaffen.

  • Randwertdaten
    Daten, die am Rand des erwarteten Wertebereichs liegen, um die Grenzen der Anwendung zu testen.

  • Fehlerhafte Daten
    Ungültige oder fehlerhafte Daten, um die Fehlertoleranz und -behandlung zu prüfen.

  • Leistungsdaten
    Große Datensätze und Transaktionsvolumen zur Durchführung von Performance- und Lasttests.

Beschaffung von Testdaten

Die Beschaffung von Testdaten kann auf verschiedene Arten erfolgen:

  • Datenextraktion
    Extraktion aus bestehenden Systemen, vorzugsweise aus der Produktionsumgebung, um die Authentizität zu gewährleisten.

  • Datengenerierung
    Verwendung von Tools zur Generierung von Testdaten, wenn reale Daten nicht verfügbar oder ungeeignet sind.

  • Datenklopfen
    Kopieren und Anpassen realer Datensätze aus ähnlichen Anwendungen oder älteren Systemversionen.

Pseudonymisierung der Testdaten

Die Pseudonymisierung von Testdaten ist erforderlich, um die Privatsphäre und den Datenschutz zu wahren, insbesondere wenn echte Produktionsdaten verwendet werden.

  • Rechtliche Anforderungen
    Vor der Pseudonymisierung ist es wichtig, die rechtlichen Anforderungen, wie die DSGVO, zu verstehen und zu befolgen.

  • Methoden der Pseudonymisierung
    Es können verschiedene Ansätze verfolgt werden, z. B. das Ersetzen von Namen und Adressen durch zufällige, aber plausible Werte, die Veränderung von Datumsangaben oder das Entfernen von Identifikationsnummern.

  • Automatisierung
    Für die Pseudonymisierung können automatisierte Tools verwendet werden, die speziell dafür entwickelt wurden, große Datensätze effizient zu bearbeiten.

  • Nachbearbeitung
    Überprüfung der Testdaten nach der Pseudonymisierung, um sicherzustellen, dass keine Rückschlüsse auf echte Personen möglich sind.

Zu planendes Vorgehen

  1. Analyse der Testanforderungen
    Feststellung, welche Arten von Daten für die verschiedenen Tests benötigt werden.

  2. Auswahl der Datenquellen
    Entscheidung, ob Daten extrahiert, generiert oder kopiert werden sollen.

  3. Entwicklung eines Pseudonymisierungsplans
    Festlegung der spezifischen Techniken und Werkzeuge für die Pseudonymisierung der Daten.

  4. Durchführung der Pseudonymisierung
    Implementierung der Pseudonymisierungsverfahren, ggf. mit Hilfe von Softwaretools.

  5. Überprüfung und Validierung
    Sicherstellung, dass die pseudonymisierten Daten keine sensiblen Informationen enthalten und für Testzwecke geeignet sind.

  6. Bereitstellung der Testdaten
    Stellen Sie die Daten in den entsprechenden Testumgebungen bereit und stellen Sie sicher, dass sie für die Tester zugänglich sind.

Durch die Einhaltung derartiger Verfahren kann sicher gestellt werden, dass die Testdaten zuverlässig, sicher und konform mit den Datenschutzgesetzen sind, was die Integrität und Legitimität des Testprozesses weiter stärkt.

Testumgebungen

Die Bereitstellung und Verwaltung verschiedener Testumgebungen ist bedeutend, um sicherzustellen, dass die Software unter Bedingungen getestet wird, die den verschiedenen Stadien der Entwicklung und Freigabe entsprechen.

Entwicklungsumgebung

  • Zweck
    In dieser Umgebung erfolgen die erste Phase des Testens und die Entwicklung neuer Funktionen. Sie wird hauptsächlich von Entwicklern genutzt, um neue Code-Updates schnell zu integrieren und zu testen, bevor sie an das QA-Team weitergeleitet werden.

  • Setup
    Die Entwicklungsumgebung enthält oft mehrere Entwicklungsbranchen und ist weniger stabil, da hier kontinuierlich neue Features hinzugefügt werden.

Testumgebung

  • Zweck
    Diese Umgebung dient zum Durchführen umfassender Tests, einschließlich Integrations-, Funktions- und Regressionstests. Sie ist von der Entwicklungsumgebung isoliert und ähnelt der Produktionsumgebung, um realistische Testbedingungen zu gewährleisten.

  • Setup
    Die Testumgebung sollte alle für die Tests notwendigen Softwarekonfigurationen und Hardwareanforderungen der Produktionsumgebung nachbilden, jedoch ohne die tatsächlichen Produktionsdaten zu verwenden.

Staging-Umgebung

  • Zweck
    Die Staging-Umgebung dient als letzte Testphase vor der Freigabe und ist eine Vorproduktionsumgebung. Hier werden die Release-Kandidaten unter Bedingungen getestet, die denen der Produktionsumgebung sehr nahe kommen, um die letzte Validierung vor der Live-Schaltung zu ermöglichen.

  • Setup
    Diese Umgebung spiegelt die Produktionsumgebung so genau wie möglich wider und wird für die End-to-End-Tests, Benutzerakzeptanztests und Sicherheitstests verwendet.

Produktionsähnliche Umgebung

  • Zweck
    Eine produktionsähnliche Umgebung wird für Pre-Release-Tests und Leistungsbewertung eingesetzt. Sie ist besonders wichtig, um die Performance und das Verhalten der Anwendung unter produktionsähnlichen Bedingungen zu evaluieren, ohne das Risiko einzugehen, die tatsächliche Produktionsumgebung zu beeinträchtigen.

  • Setup
    Diese Umgebung ist identisch zur Produktionsumgebung und wird oft mit geklonten, anonymisierten Produktionsdaten betrieben, um ein realistisches Testbild zu gewährleisten.

Testsysteme

Implementierung von 2 separaten Testsystemen

Die Implementierung - sofern darstellbar - von zwei separaten Testsystemen ist aus folgenden Gründen zu empfehlen:

  • Vermeidung von Engpässen
    Durchführen von Batchtests und manuellen Tests auf einem einzelnen System kann zu signifikanten Verzögerungen führen.

  • Redundanz
    Bei einem Systemausfall kann das zweite System die Fortführung der Tests gewährleisten, was eine kontinuierliche Produktivität sicherstellt.

  • Schulungen und Tests
    Die gleichzeitige Nutzung eines Systems für Schulungen und Tests kann zu Konflikten und Verzögerungen führen.

  • Unabhängigkeit von Entwicklungen
    Änderungen sollten die Verfügbarkeit oder Leistung des Testsystems nicht beeinträchtigen.

Die Bereitstellung von zwei getrennten Testsystemen bietet die nötige Flexibilität und Redundanz, um die Testphasen effizient und ohne unnötige Unterbrechungen zu managen.

  • Erstes System – Reines Testsystem
    Dieses System wird ausschließlich für Testzwecke verwendet. Hier werden alle Formen von Tests durchgeführt, einschließlich Integrationstests, Performance-Tests und Sicherheitstests.

  • Zweites System – Test- und Schulungssystem
    Dieses System dient sowohl als Plattform für weiterführende Tests als auch für Schulungszwecke. Dies ermöglicht eine flexible Nutzung ohne Beeinträchtigung der primären Testaktivitäten auf dem ersten System.

Testzugänge und Testonlinezeiten

Testzugänge

  • Benutzerkonten
    Um eine umfassende Testabdeckung zu gewährleisten, erhalten alle Tester mehrere Testuser-Zugänge mit unterschiedlich abgestuften Berechtigungen. Dies ermöglicht es den Testern, verschiedene Benutzerrollen und das Vieraugenprinzip unabhängig zu testen.

  • Verantwortlichkeit und Sicherheit
    Jeder Tester ist für die Sicherheit und Vertraulichkeit seiner Zugangsdaten verantwortlich. Die Weitergabe von Zugangsdaten an Dritte ist strengstens untersagt.

Testonlinezeiten

  • Verfügbarkeit
    Die Testumgebungen sind möglichst durchgehend verfügbar sein, um eine flexible Testdurchführung zu ermöglichen.

  • Support und Hotline
    Eine Hotline sollte eingerichtet werden, um auch außerhalb der Kernarbeitszeiten Unterstützung bei Problemen bieten zu können.

Wartung und Fehlerbehebung

Regelmäßige Wartungsfenster sollten möglichst nicht vorgesehen werdenn, das minimiert Störungen in den Testprozessen.

Fehlerupdates sollten hingegen mindestens einmal pro Woche eingespielt werden, um eine höhere Integrität und Aussagekraft der Testergebnisse zu gewährleisten.

Vorgehensweise zur Verfügbarkeit der Umgebungen

  1. Planung und Terminierung
    • Definieren Sie frühzeitig im Entwicklungszyklus, welche Testphasen erforderlich sind und wann jede Umgebung bereitstehen muss. Dies hilft, Engpässe zu vermeiden und stellt sicher, dass die Umgebungen rechtzeitig für die jeweiligen Testphasen zur Verfügung stehen.

  2. Umgebungsmanagement
    • Implementieren Sie ein Umgebungsmanagement-Tool oder -System, um den Status jeder Umgebung zu überwachen und zu verwalten. Dies sollte auch Funktionen zur Reservierung und Freigabe von Umgebungen für bestimmte Testphasen umfassen.

  3. Datenvorbereitung
    • Stellen Sie sicher, dass die notwendigen Testdaten in den Umgebungen vorbereitet und verfügbar sind. Dies kann das Anonymisieren von Produktionsdaten oder das Erstellen spezifischer Testdatensätze umfassen.

  4. Wartung und Aktualisierung
    • Planen Sie regelmäßige Wartungsarbeiten für jede Umgebung, um sicherzustellen, dass sie aktualisiert und frei von veralteten Daten oder Konfigurationen bleibt.

  5. Zugangsmanagement
    • Verwalten Sie den Zugang zu den Umgebungen streng und stellen Sie sicher, dass nur autorisierte Benutzer Zugriff haben, besonders in den kritischeren Staging- und produktionsähnlichen Umgebungen.

Eine Beratung, so wie sie sein soll – Hettwer UnternehmensBeratung GmbH – Eine Beratung, so wie sie sein soll – Hettwer UnternehmensBeratung GmbH – Eine Beratung, so wie sie sein soll – Hettwer UnternehmensBeratung GmbH – Eine Beratung, so wie sie sein soll – Hettwer UnternehmensBeratung GmbH – Eine Beratung, so wie sie sein soll – Hettwer UnternehmensBeratung GmbH

Hettwer UnternehmensBeratung

Hettwer UnternehmensBeratung GmbH - Spezialisierte Beratung - Umsetzungsdienstleistungen im Finanzdienstleistungssektor – Experte im Projekt- und Interimsauftragsgeschäft - www.hettwer-beratung.de

H-UB ERFOLGSGESCHICHTE

Auszeichnung:

Gold-Partner-Zertifikat

Hettwer UnternehmensBeratung GmbH wurde aufgrund der erbrachten Beraterleistungen in den exklusiven Kreis der etengo Gold-Partner aufgenommen.

H-UB EXPERTENWISSEN

Hettwer UnternehmensBeratung GmbH – Expertenprofil Klaus Georg Hettwer (Geschäftsführer): Beratungskompetenz, Fachliche Kompetenz, Methodische Kompetenz, Soziale Kompetenz, Kommunikationskompetenz; Sonderthemen: SEPA, EMIR, TARGET2, MiFID, T2S

- Eine Beratung mit PROFIL -

H-UB Leistungskatalog

H-UB Leistungskatalog.pdf
Adobe Acrobat Dokument 89.4 KB

H-UB SOCIAL MEDIA PRÄSENZ

© 2010-2024 Hettwer UnternehmensBeratung GmbH