Was sind Testdaten beim Softwaretest?
Als Tester denken Sie vielleicht: „Das Entwerfen von Testfällen ist schon herausfordernd genug, warum sollte man sich dann mit etwas so Trivialem wie Testdaten beschäftigen?“ Der Zweck dieses Tutorials besteht darin, Sie mit Testdaten und ihrer Bedeutung vertraut zu machen und praktische Tipps und Tricks für die schnelle Generierung von Testdaten zu geben. Also, fangen wir an!
Was sind Testdaten beim Softwaretest?
Testdaten beim Softwaretesten ist die Eingabe, die einem Softwareprogramm während der Testausführung gegeben wird. Es stellt Daten dar, die die Softwareausführung während des Tests beeinflussen oder von ihr beeinflusst werden. Testdaten werden sowohl für positive Tests verwendet, um zu überprüfen, ob Funktionen für bestimmte Eingaben erwartete Ergebnisse liefern, als auch für negative Tests, um die Fähigkeit der Software zu testen, ungewöhnliche, außergewöhnliche oder unerwartete Eingaben zu verarbeiten.
Schlecht konzipierte Testdaten testen möglicherweise nicht alle möglichen Testszenarien, was die Qualität der Software beeinträchtigt.
Was ist Testdatengenerierung? Warum sollten Testdaten vor der Testausführung erstellt werden?
Jeder weiß, dass Testen ein Prozess ist, der große Datenmengen produziert und verbraucht. Beim Testen verwendete Daten beschreiben die Ausgangsbedingungen für einen Test und stellen das Medium dar, über das der Tester die Software beeinflusst. Es ist ein entscheidender Teil der meisten Funktionsprüfungen.
Abhängig von Ihrer Testumgebung müssen Sie möglicherweise Testdaten ERSTELLEN (in den meisten Fällen) oder zumindest geeignete Testdaten für Ihre Testfälle identifizieren (sofern die Testdaten bereits erstellt wurden).
Normalerweise werden Testdaten synchron mit dem Testfall Es soll dazu verwendet werden.
Testdaten können generiert werden –
- Von Hand
- Massenkopie von Daten von der Produktions- in die Testumgebung
- Massenkopie von Testdaten aus älteren Clientsystemen
- Automatisierte Tools zur Testdatengenerierung
Normalerweise sollten Beispieldaten generiert werden, bevor Sie mit der Testausführung beginnen, da die Verwaltung der Testdaten sonst schwierig ist. Da in In vielen Testumgebungen sind für die Erstellung von Testdaten mehrere Vorschritte oder sehr zeitaufwändige Testumgebungskonfigurationen erforderlich. . Auch wenn die Testdatengenerierung abgeschlossen ist während Wenn Sie sich in der Testausführungsphase befinden, kann es sein, dass Ihre Testfrist überschritten wird.
Im Folgenden werden verschiedene Testtypen zusammen mit einigen Vorschlägen zu ihren Testdatenanforderungen beschrieben.
Testdaten für Weiß Box Testen
In Weiß Box TestenDas Testdatenmanagement wird aus der direkten Untersuchung des zu testenden Codes abgeleitet. Testdaten können unter Berücksichtigung der folgenden Dinge ausgewählt werden:
- Es ist wünschenswert, möglichst viele Zweige abzudecken; Testdaten können so generiert werden, dass alle Zweige im Programmquellcode mindestens einmal getestet werden
- Pfadtests: Alle Pfade im Programmquellcode werden mindestens einmal getestet – die Vorbereitung der Testdaten kann durchgeführt werden, um so viele Fälle wie möglich abzudecken
- Negative Gedanken und API-Tests:
- Testdaten können ungültige Parametertypen enthalten, die zum Aufrufen verschiedener Methoden verwendet werden
- Testdaten können aus ungültigen Argumentkombinationen bestehen, die zum Aufrufen der Programmmethoden verwendet werden
Testdaten für Leistungstests
Performance Testing ist die Art von Tests, die durchgeführt werden, um zu bestimmen, wie schnell das System unter einer bestimmten Arbeitslast reagiert. Das Ziel dieser Art von Tests besteht nicht darin, Fehler zu finden, sondern Engpässe zu beseitigen. Ein wichtiger Aspekt des Leistungstests besteht darin, dass die verwendeten Beispieldaten sehr ähnlich sein müssen „echt“ oder „live“ Daten, die in der Produktion verwendet werden. Es stellt sich die Frage: „Okay, es ist gut, mit echten Daten zu testen, aber wie erhalte ich diese Daten?“ Die Antwort ist ziemlich einfach: von den Leuten, die es am besten wissen – Die Kunden. Sie können möglicherweise einige Daten bereitstellen, die ihnen bereits vorliegen, oder, wenn sie nicht über einen vorhandenen Datensatz verfügen, können sie Ihnen helfen, indem sie Ihnen Feedback dazu geben, wie die realen Daten aussehen könnten. Falls Sie sich in einem befinden Wartungstests Projekt könnten Sie Daten aus der Produktionsumgebung in die Testumgebung kopieren. Es ist eine gute Praxis, dies zu tun anonymisieren (Verschlüsselung) sensibler Kundendaten wie Sozialversicherungsnummer, Kreditkarte Numbers, Bankdaten usw., während die Kopie erstellt wird.
Testdaten für Sicherheitstests
Sicherheitstests ist der Prozess, der bestimmt, ob ein Informationssystem Daten vor böswilligen Absichten schützt. Der Datensatz, der zum vollständigen Testen der Softwaresicherheit erstellt werden muss, muss die folgenden Themen abdecken:
- Vertraulichkeit: Alle von Kunden bereitgestellten Informationen werden streng vertraulich behandelt und nicht an Dritte weitergegeben. Als kurzes Beispiel: Wenn eine Anwendung SSL verwendet, können Sie einen Satz Testdaten entwerfen, der überprüft, ob die Verschlüsselung korrekt erfolgt.
- Integrity: Stellen Sie sicher, dass die vom System bereitgestellten Informationen korrekt sind. Um geeignete Testdaten zu entwerfen, können Sie zunächst einen detaillierten Blick auf Design, Code, Datenbanken und Dateistrukturen werfen.
- Authentifizierung: Stellt den Prozess der Feststellung der Identität eines Benutzers dar. Testdaten können als unterschiedliche Kombination aus Benutzernamen und Passwörtern konzipiert sein und dienen dazu, zu überprüfen, dass nur autorisierte Personen auf das Softwaresystem zugreifen können.
- Zulassung: Gibt an, welche Rechte ein bestimmter Benutzer hat. Testdaten können eine unterschiedliche Kombination von Benutzern, Rollen usw. enthalten Geschäftstätigkeit um zu überprüfen, dass nur Benutzer mit ausreichenden Berechtigungen einen bestimmten Vorgang ausführen können.
Testdaten für Schwarz Box Testen
In Schwarz Box Das Testen des Codes ist für den Tester nicht sichtbar. Ihre funktionalen Testfälle können Testdaten enthalten, die die folgenden Kriterien erfüllen:
- Keine Daten: Überprüfen Sie die Systemreaktion, wenn keine Daten übermittelt werden
- Gültige Daten: Überprüfen Sie die Systemreaktion, wenn gültige Testdaten übermittelt werden
- Ungültige Daten: Überprüfen Sie die Systemreaktion, wenn Ungültig Testdaten werden übermittelt
- Unzulässiges Datenformat: Überprüfen Sie die Systemreaktion, wenn Testdaten ein ungültiges Format haben
- Randbedingungsdatensatz: Testdaten, die die Grenzwertbedingungen erfüllen
- Äquivalenzpartitionsdatensatz: Testdaten zur Qualifizierung Ihrer Äquivalenzpartitionen.
- Entscheidungstabellendatensatz: Testdaten zur Qualifizierung Ihrer Strategie zum Testen von Entscheidungstabellen
- Zustandsübergangstestdatensatz: Testdaten, die Ihrer Teststrategie für den Zustandsübergang entsprechen
- Use-Case-Testdaten: Testen Sie Daten synchron mit Ihren Anwendungsfällen.
Hinweis: Abhängig von der zu testenden Softwareanwendung können Sie einige oder alle der oben genannten Testdatenerstellungsmethoden verwenden
Automatisierte Tools zur Testdatengenerierung
Um verschiedene Datensätze zu generieren, können Sie eine Reihe automatisierter Tools zur Testdatengenerierung verwenden. Nachfolgend finden Sie einige Beispiele für solche Tools:
DTM Testdatengeneratorist ein vollständig anpassbares Dienstprogramm, das Daten und Tabellen (Ansichten, Prozeduren usw.) für Datenbanktests (Leistungstests, QS-Tests, Lasttests oder Benutzerfreundlichkeitstests) generiert.
Datatect ist ein SQL Datengenerator von Banner Software, generiert eine Vielzahl realistischer Testdaten in ASCII-Flatfiles oder generiert direkt Testdaten für RDBMS, einschließlich Oracle, Sybase, SQL Server und Informix.
Fazit
Zusammenfassend lässt sich sagen, dass gut konzipierte Testdaten es Ihnen ermöglichen, schwerwiegende Funktionsmängel zu erkennen und zu beheben. Die Auswahl der ausgewählten Testdaten muss in jeder Phase eines mehrphasigen Produktentwicklungszyklus neu bewertet werden. Behalten Sie es also immer im Auge. Um diesen Prozess zu erleichtern, verwenden Sie effiziente Testen Sie Tools zur Datengenerierung könnte Ihren Arbeitsablauf erheblich rationalisieren.