fbpx

Negative Tests bei Softwaretests sind eine Technik, mit der überprüft wird, wie Ihre Anwendung auf unerwartetes Verhalten oder ungültige Daten reagiert. Diese Art von Tests kann Qualitätssicherungs-Teams dabei helfen, die Robustheit und Stabilität ihrer Software zu verbessern, indem sie Ausnahmen aufspüren, die zum Einfrieren, Abstürzen oder anderen unerwünschten Ergebnissen führen.

In diesem Artikel erfahren Sie, was negatives Softwaretesten ist, warum es wichtig ist und welche verschiedenen Ansätze, Techniken und Tools Sie dafür verwenden können.

 

Was sind negative Softwaretests?

Inkrementelles Testen beim Softwaretesten - Ein tiefer Einblick in Was ist das, Arten, Verfahren, Ansätze, Werkzeuge und mehr!

Negativtests sind eine Softwaretesttechnik, bei der ein System absichtlich mit ungültigen Eingaben oder unerwarteten Daten gefüttert wird, um zu sehen, wie es mit diesen Szenarien umgeht. Dieser Ansatz, der auch als Fehlertest oder Fehlerpfadtest bezeichnet wird, simuliert die verschiedenen realen Szenarien, denen Ihre Anwendung ausgesetzt ist, wie z. B. die Eingabe ungültiger Daten oder Zeichen durch die Benutzer oder die Verwendung bestimmter Funktionen auf eine Weise, die Sie nie beabsichtigt haben.

Die meisten Arten von Tests verwenden gültige Daten, um eine Anwendung zu testen. Negativtests verfolgen jedoch einen anderen Ansatz, indem sie um die Ränder herum und über die typischen Eingaben hinaus testen und sehen, wie die Anwendung mit Ausnahmen umgeht.

Es ist wichtig zu testen, ob Ihre Anwendung wie vorgesehen funktioniert. Auf der anderen Seite ist es aber auch wichtig, zu verstehen, was passiert, wenn die Benutzer sich nicht an die Vorgaben halten, insbesondere wenn diese unbeabsichtigte Nutzung zu Abstürzen, Einfrieren oder anderen Fehlern führt.

 

Unterschied zwischen positiven und negativen Tests

Testen in der Softwareprüfung

Vorteile von rpa

Wie oben beschrieben, werden bei negativen Tests unerwartete oder ungültige Daten verwendet, um das Verhalten eines Systems zu überprüfen. Im Gegensatz dazu werden bei positiven Tests erwartete oder gültige Daten verwendet, um zu überprüfen, ob das System wie erwartet funktioniert.

Mit anderen Worten:

  • Positive Tests helfen Ihnen zu verstehen, ob Ihre Anwendung wie geplant funktioniert
  • Negativtests ermitteln, ob Ihre Anwendung unerwartete Ereignisse bewältigen kann

Sowohl Positiv- als auch Negativtests sind bei Softwaretests erforderlich, wenn Sie Ihre Anwendung rigoros testen wollen.

 

Warum sind negative Softwaretests so wichtig?

Warum sind negative Tests so wichtig?

Wenn Entwickler Software entwickeln, haben sie eine klare Vorstellung davon, wie sie erwarten, dass der Benutzer die Software nutzt. Die Nutzer halten sich jedoch nicht immer an die Regeln. Oft versuchen sie, auf Schaltflächen zu klicken, die es gar nicht gibt, Buchstaben in Zahlenfelder einzugeben oder Eingaben zu machen, die Sie nicht erwarten.

Negative Tests zielen darauf ab, diese Randfälle zu berücksichtigen, die durch positive Testtechniken nicht aufgedeckt werden können, wie
Einheit
,
System
oder
Integrationstests
. Es erfordert ein gewisses Maß an unkonventionellem Denken, um das System mit „Kurvenbällen“ zu bewerfen. Das Ergebnis ist jedoch eine stabilere und robustere Anwendung.

 

Was ist der Zweck einer negativen Prüfung?

in der Softwareprüfung?

Die Zukunft der robotergestützten Prozessautomatisierung im Gesundheitswesen

Negative Tests haben ähnliche Ziele wie andere Arten von Softwaretests. Nämlich um Bugs, Defekte und Schwachstellen in einer Anwendung aufzudecken. Sie spielt jedoch eine besondere Rolle bei der Suche nach Fehlern, die nicht durch die Verwendung gültiger Daten aufgedeckt werden können. Im Folgenden werden einige Gründe genannt, die für einen negativen Testansatz sprechen.

 

1. Mängel aufdecken

Der zentrale Zweck von Negativtests bei Softwaretests ist die Aufdeckung von Fehlern, die durch ungültige Daten oder unerwartete Eingaben entstehen. So können die Tester einen proaktiveren Ansatz bei der Fehlererkennung verfolgen und sicherstellen, dass die Software den Erwartungen entspricht.

 

2. Sicherheit

Unerwartete Eingaben oder ungültige Daten können Sicherheitslücken aufdecken. Das Testen und Lösen dieser Randfälle führt zu einer sichereren und robusteren Anwendung, da die Möglichkeit von böswilligen Angriffen, Injektionsfehlern oder unbefugten Zugriffsversuchen verringert wird.

 

3. Fehlerbehandlung

Negative Tests sind nützlich, um die Fehlerbehandlung zu überprüfen. Es geht nicht nur darum, sicherzustellen, dass das System stabil bleibt, wenn es auf unerwartete Eingaben oder Daten stößt, sondern auch darum, wie es auf diese Ereignisse reagiert, z. B. indem es Fehlermeldungen ausgibt, um sicherzustellen, dass der Endbenutzer weiß, dass die Daten ungültig sind.

 

4. Verbesserung der Testabdeckung

Positiv- und Negativtests bei Softwaretests ergänzen sich in hohem Maße. Beide decken verschiedene Elemente der Dateneingabe ab, was bedeutet, dass Ihre Prüfung umfassender ist.

 

5. Bessere Nutzererfahrung

Negativtests helfen dabei, die Quelle von Fehlermeldungen, Abstürzen und anderen unerwarteten Verhaltensweisen zu finden, die sich negativ auf die Benutzererfahrung auswirken können.

 

Unterschied zwischen positiv und negativ

Testen in der Softwareentwicklung

Alpha-Tests vs. Beta-Tests

Wie bereits erwähnt, werden bei negativen Tests unerwartete oder ungültige Daten gesendet, um das Verhalten eines Systems zu überprüfen. Bei positiven Tests hingegen werden erwartete oder gültige Daten gesendet, um zu überprüfen, ob das System wie erwartet funktioniert.

Der Unterschied zwischen einem positiven und einem negativen Test besteht unter anderem darin, dass der Test positiv ist:

 

1. Zielsetzungen:

Beim positiven Testen wird überprüft, ob die Software wie beabsichtigt funktioniert; beim negativen Testen wird versucht zu verstehen, was in nicht beabsichtigten Szenarien passiert.

 

2. Daten:

Bei Positivtests werden gültige Daten verwendet, während bei Negativtests ungültige Eingaben, Extremwerte und unerwartete Formate verwendet werden.

 

3. Schwerpunkt:

Positivtests konzentrieren sich auf Erfolgsszenarien, während sich Negativtests eher mit erfolglosen Szenarien befassen.

 

Verschiedene Arten von Negativtests

Beta-Tests - Was es ist, Arten, Prozesse, Ansätze, Tools, im Vergleich zu Alpha-Tests und mehr!

Negativtests sind ein Konzept, das mehrere verschiedene Ansätze zur Validierung der Qualität und Integrität einer Anwendung umfasst. Hier sind sieben Arten von negativen Tests, die Sie kennen sollten.

 

#1. Grenzwertprüfung

Beim Grenzwerttest wird die Software mit Eingaben getestet, die an den Grenzen oder Rändern des Eingabebereichs liegen. Er testet sowohl den maximalen als auch den minimalen erwarteten Wert, testet aber auch knapp über diese Eingaben hinaus.

Beispiel: In einem Eingabefeld können Zahlen zwischen 1-9 eingegeben werden. Bei einem Grenzwerttest werden sowohl 1 und 9 eingegeben als auch 0 und 10 getestet.

 

#2. Prüfung der Eingabewerte

Beim Testen der Eingabewerte wird ermittelt, wie das System auf unerwartete oder ungültige Eingaben reagiert. Geprüft werden unter anderem folgende Eingaben:

  • Falsche Datentypen
  • Werte außerhalb des Bereichs
  • Besondere Zeichen
  • Leere Felder.

Beispiel: In ein Eingabefeld kann nur eine Zahl eingegeben werden. Im Test wird also ein Buchstabe eingegeben, um zu sehen, wie das System reagiert.

 

#3. Belastungstests


Lasttests
helfen den Testern zu beurteilen, wie das System unter starker Belastung reagiert, z. B. bei großen Datensätzen oder hohem Verkehrsaufkommen.
Werkzeuge zur Testautomatisierung
können diese extremen Bedingungen simulieren, um zu verstehen, wie das System unter Zwang reagiert.

Beispiel: Der Prüfer simuliert Tausende von Benutzern, die gleichzeitig auf eine Website zugreifen.

 

#4. Prüfung von Ausnahmen

Bei dieser Art von Tests wird untersucht, wie das System auf außergewöhnliche Ereignisse oder Fehler reagieren wird. Einige der Tests umfassen

  • Systemabstürze simulieren
  • Netzausfälle
  • Datenbank-Fehler
  • Probleme mit dem Speicherplatz
  • Fehlende Dateien.

Beispiel: Der Test könnte untersuchen, was passiert, wenn ein Benutzer eine Datei aus der Anwendung herunterlädt und das Internet unterbrochen wird.

 

#5. Sicherheitstests

Sicherheitstests verwenden einen negativen Testansatz, um Schwachstellen in der Software aufzuzeigen und zu verstehen, die durch ungültige oder unerwartete Eingaben aufgedeckt werden können. Dieser Ansatz testet auf gängige Angriffe, wie z. B.:

  • SQL-Einschleusung
  • Cross-Site-Scripting (XSS)
  • Pufferüberläufe.

Beispiel: Bei einem Sicherheitstest könnte versucht werden, bösartigen Code in ein Benutzereingabefeld einzuschleusen.

 

#6. Testen der Benutzeroberfläche

Diese Art von Tests konzentriert sich auf Fehler, die auftreten, wenn der Benutzer mit der Software interagiert. Dabei wird unter anderem versucht, folgende Punkte zu ermitteln:

  • Unerwartete Reaktionen auf Benutzerinteraktionen
  • Falsche Fehlermeldungen
  • Probleme bei der Navigation

Beispiel: In dem Test wird untersucht, was passiert, wenn bestimmte Aktionen nicht in der richtigen Reihenfolge ausgeführt werden.

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

 

#7. Prüfung der Datenintegrität

Die Prüfung der Datenintegrität stellt sicher, dass die Daten bei einer Vielzahl von Vorgängen innerhalb der Anwendung korrekt und konsistent bleiben. Geprüft werden u. a. folgende Punkte:

  • Mögliche Datenverfälschungen
  • Szenarien für Datenverlust
  • Unbeabsichtigte Datenänderungen

Beispiel: Mit dem Test wird überprüft, ob die Daten nach einer Übertragung gleich bleiben.

 

Wie Sie sehen können, gibt es viele verschiedene Ansätze für Negativtests. Allen gemeinsam ist die Verwendung von unerwarteten Eingaben oder ungültigen Daten, um zu sehen, wie die Anwendung unter untypischen Bedingungen funktioniert.

 

Vorteile eines negativen Tests

Vorteile bei negativen Tests

Bei Negativtests geht es darum, zu verstehen, wie Ihre Anwendung in unerwarteten Situationen funktioniert. Im Folgenden werden einige der wichtigsten Vorteile dieses Ansatzes aufgeführt.

  • Sie hilft Ihnen zu verstehen, welche Auswirkungen unerwartete Eingaben oder ungültige Daten auf Ihre Anwendung haben werden. Wird es abstürzen? Eine ungenaue Fehlermeldung ausspucken?
  • Negative Tests sind Teil eines verantwortungsvollen Qualitätssicherungskonzepts, da sie darauf abzielen, Schwachstellen im System zu identifizieren.
  • Bei negativen Tests wird die Software auf Herz und Nieren geprüft, indem ihre Reaktion auf unvorhergesehene oder unerwartete Szenarien getestet wird, auf die sie in der Praxis stoßen wird.
  • Auch hier sind Negativtests ein wesentlicher Bestandteil eines gründlichen Sicherheitsansatzes, da sie potenzielle Angriffsvektoren aufzeigen, die Cyberangreifer ausnutzen könnten.

 

Nachteile eines negativen Tests

Checkliste uat, Webanwendungstests, Automatisierung und mehr

Negativtests bieten eine Fülle von Vorteilen, aber sie haben auch einige Nachteile, die es zu überwinden gilt.

  • Gründliche Negativtests können zusätzliche Hardware und Software erfordern, was die Testkosten erhöhen kann. Für Teams, die über ein knappes Budget verfügen, kann dies von Nachteil sein.
  • Negative Tests können ziemlich zeitaufwendig sein, da sie die Erstellung vieler Testfälle erfordern, um die verschiedenen Permutationen von Eingaben abzudecken, denen die Software in der Produktion ausgesetzt sein wird.
  • Die Zahl der unvorhersehbaren Situationen, die Sie mit negativen Tests abdecken können, ist begrenzt. Manche Situationen können sogar so unerwartet sein, dass sie von den Testern nicht berücksichtigt werden können.
  • Die Automatisierung von negativen Testfällen ist eine Herausforderung. Mit der richtigen Software, wie z.B. ZAPTEST, ist der Prozess jedoch viel einfacher zu handhaben.

 

Herausforderungen bei negativen Tests

UAT-Tests im Vergleich zu Regressionstests und anderen

Negativtests sind von entscheidender Bedeutung, wenn Sie eine robuste und zuverlässige Software entwickeln wollen, die den Belastungen der Benutzerinteraktion standhält. Bei der Umsetzung dieses Konzepts gibt es jedoch einige Herausforderungen, die Sie beachten sollten.

Schauen wir uns einige der hartnäckigsten Herausforderungen an.

 

1. Identifizierung negativer Szenarien beim Softwaretest

 

Ausreichende Abdeckung:

Eine der größten Herausforderungen bei Negativtests besteht darin, genügend unerwartete Szenarien abzudecken. Es gibt eine Vielzahl negativer Szenarien und Permutationen, die zu berücksichtigen einen kreativen Ansatz erfordert, um sich vorzustellen, wie Ihre Benutzer mit der Software interagieren werden.

 

Prioritäten setzen:

Bei so vielen potenziell negativen Szenarien, die unter die Lupe genommen werden müssen, sind sich die Tester nicht immer sicher, wo sie anfangen sollen. Zu den soliden Kriterien für die Festlegung von Prioritäten gehören Prognosen:

  1. Situationen mit hoher Fehlerwahrscheinlichkeit
  2. Die Schwere der Folgen von Mängeln.

 

2. Entwurf geeigneter negativer Testfälle

 

Eingabeüberprüfung:

Der Entwurf solider negativer Testfälle erfordert ein ziemlich umfassendes Verständnis des Verhaltens, der Architektur und der Einschränkungen Ihres Systems. Das Testen der Software erfordert die Verwendung sorgfältig überlegter Eingaben und Daten. Zwar kann ein zufälliger Ansatz helfen, einige Fehler aufzudecken, aber er verblasst im Vergleich zu einem präziseren und systematischen Ansatz für negative Tests.

 

Datenvielfalt:

Je nach den Besonderheiten Ihres Systems müssen Sie möglicherweise mit einer Vielzahl von Daten testen. In der Tat gibt es viele verschiedene Datenformate wie Zahlen, Text, Daten usw., die von Ihrer Anwendung akzeptiert werden können. Die Herausforderung besteht darin, Testfälle zu entwerfen, die jedes Format und insbesondere jede Variante ungültiger Daten berücksichtigen können. Diese Situation kann für Testteams ziemlich zeitaufwendig sein.

 

3. Effizienz und Testautomatisierung

 

Zeitaufwendig:

Positive Tests zielen darauf ab, die Software anhand der erwarteten Ergebnisse zu validieren. Negative Tests hingegen müssen das Unerwartete erforschen und mögliche Szenarien untersuchen. Unbekanntes Terrain zu betreten, braucht mehr Zeit. Wenn Sie also die umfassenden Ergebnisse eines negativen Tests wünschen, müssen Sie bereit sein, einige zusätzliche Stunden zu investieren.

 

Komplexität der Automatisierung:

Negativtests können zeit- und ressourcenintensiv sein. Es ist also eine perfekte Aufgabe für die Automatisierung von Softwaretests. Allerdings gibt es einige Schwierigkeiten, die überwunden werden müssen. Der Entwurf von Testfällen, die erwartete Ergebnisse für unerwartete Eingaben definieren, erfordert beispielsweise einige Erfahrung und Know-how. Außerdem unterstützt Ihr bestehendes Framework für Automatisierungstests möglicherweise nicht die ungültigen Daten, die Sie in Ihre Anwendung einspeisen möchten, was die Komplexität weiter erhöht.

 

4. Auswertung der Ergebnisse

 

Falsch positive Ergebnisse:

Die Kalibrierung Ihrer Tests, um ein zufriedenstellendes Gleichgewicht zwischen Genauigkeit und Vollständigkeit zu gewährleisten, ist ein vertrautes Thema für Negativtester. In manchen Situationen verwechselt eine überempfindliche Fehlerbehandlung fälschlicherweise gültige Eingaben mit negativen Eingaben, was dazu führt, dass Zeit für Probleme verschwendet wird, die nicht relevant sind.

 

Zweideutige Ergebnisse:

Wenn ein System eine ungültige Eingabe erhält, kann dies zu Abstürzen, Fehlern oder zum Einfrieren führen. In vielen Fällen ist dies ein sicheres Zeichen für einen Fehler. In anderen Fällen handelt es sich jedoch um einen unbehandelten Grenzfall, den die Entwickler nicht berücksichtigt haben. Die Unterscheidung zwischen diesen einzelnen Situationen ist wichtig, aber die Suche nach der wahren Ursache ist zeitaufwändig.

 

Datenverwaltung:

Negativtests erfordern eine beträchtliche Menge an Daten. Diese Testinformationen müssen sowohl erstellt als auch gepflegt werden. In Entwicklungsszenarien mit engen Zeitvorgaben ist dies eine zusätzliche Aufgabe, die berücksichtigt werden muss.

 

5. Organisatorische Fragen

 

Fehlende Erfahrung mit Negativtests:

Negative Tests sind zwar sehr beliebt, aber vielen Testern fehlen die Fähigkeiten und das Fachwissen, um diese Art von Tests umfassend durchzuführen. Der Entwurf bestimmter negativer Testfälle ist weniger intuitiv als der entsprechende positive Testfall. Darüber hinaus kann die Implementierung der Testautomatisierung ohne das richtige Fachwissen eine Herausforderung darstellen.

 

Geschäftlicher Druck:

Stakeholder, Tester und das Management müssen verstehen, welche entscheidende Rolle negative Tests bei der Entwicklung robuster Anwendungen spielen. Wird ihre Bedeutung nicht erkannt, kann dies dazu führen, dass man sich auf Kosten der Negativtests auf positive Tests konzentriert.

 

Es liegt auf der Hand, dass Teams, die die Vorteile von Negativtests nutzen wollen, vor mehreren Herausforderungen stehen. Mit dem richtigen Ansatz und den richtigen Softwaretest-Tools können Sie diese Probleme jedoch überwinden und Software entwickeln, die die Erwartungen der Benutzer übertrifft.

 

Wie man negative Testfälle für Softwaretests schreibt

Klärung einiger Unklarheiten bei der Automatisierung von Softwaretests

Das Schreiben negativer Testfälle für Softwaretests erfordert einige Erfahrung und kreatives Denken. Hier finden Sie eine schrittweise Anleitung zur Erstellung dieser kritischen Testfälle.

 

#1. Legen Sie Ihre Ziele fest

Bevor Sie Ihre negativen Testfälle für Softwaretests schreiben, müssen Sie verstehen, warum Sie negative Tests durchführen wollen. Nicht alle Anwendungen profitieren von negativen Tests.

Machen Sie sich also klar, was Sie erreichen wollen. Negative Tests dienen dazu, Fehler und Abstürze aufzudecken, die durch unerwartete Benutzerinteraktionsszenarien oder -bedingungen entstehen.

 

#2. Skizzieren Sie mögliche negative Szenarien

Als Nächstes müssen Sie die Art der negativen Szenarien berücksichtigen, die bei der Interaktion der Benutzer mit Ihrer Software auftreten können. Die Recherche in diesem Schritt ist entscheidend. Einige Bereiche, die Sie erkunden sollten, sind:

  • Systemanforderungen
  • Typische Anwendungsfälle
  • Merkmale und Funktionen der Anwendung

Untersuchen Sie diese Situationen und erstellen Sie eine Liste von Szenarien, in denen die Anwendung möglicherweise nicht so funktioniert, wie Sie es sich vorgestellt haben.

Betrachten Sie dann kritische Eingabevalidierungsszenarien. In der Regel handelt es sich dabei um Dateneingabeformulare, Login-Felder und so weiter.

Schließlich sollten Sie auch die unzähligen unkonventionellen Möglichkeiten berücksichtigen, mit denen Benutzer mit Ihrer Software interagieren können, sowie unerwartete Ereignisse, die zu negativen Ergebnissen führen können, wie z. B. Netzwerkunterbrechungen, plötzliche Systemabschaltungen, massive Datenübertragungen usw.

Sobald Sie so viele Szenarien wie möglich dokumentiert haben, ist es an der Zeit, die erwarteten Ergebnisse dieser unerwarteten Szenarien zu bestimmen.

 

#3. Umriss der erwarteten Ergebnisse

 

Jeder Testfall muss ein erwartetes Ergebnis haben, und ein negativer Testfall ist nicht anders. Am besten ist es hier, jedes negative Szenario aufzuschreiben und festzulegen, was das Ergebnis sein sollte.

Einige der möglichen Ergebnisse können sein:

  • Präzise und informative Fehlermeldungen
  • Angemessene Umleitungen
  • Anständige Systembehandlung, z. B. Verhinderung von Systemstillständen oder -abstürzen.

 

#4. Zu prüfende Eingänge auswählen

 

Nun ist es an der Zeit, die zu prüfenden Eingaben zu ermitteln. Diese Eingaben sollten diejenigen sein, die am ehesten einen Fehler oder andere negative Verhaltensweisen verursachen.

Einige Eingaben, die Sie machen müssen, sind:

  • Werte, die außerhalb des zulässigen Bereichs liegen (negative Werte in einem Altersfeld, usw.)
  • Ungültige Daten (Buchstaben in einem numerischen Feld, etc.)
  • Unerwartete Zeichen oder Symbole
  • Besondere Zeichen
  • Fehlende Daten

 

#5. Schreiben Sie Ihre Testfälle

 

Wenn Sie alle Ihre Szenarien gesammelt haben, ist es an der Zeit, Ihre Testfälle zu schreiben. Bei negativen Tests gibt es nun eine fast unbegrenzte Anzahl von Testfällen, die Sie schreiben können. Schließlich geht es bei dieser Art von Tests darum, herauszufinden, was passiert, wenn die Benutzer die Software auf eine Art und Weise verwenden, die Sie nicht beabsichtigt haben. Aus Termingründen müssen Sie jedoch die Liste der möglichen Fälle auf die Situationen beschränken, die am ehesten zu Problemen führen können.

Wie immer sollten Sie Ihre Testfälle in einer klaren, präzisen und objektiven Sprache verfassen. Hier gibt es keinen Raum für Unklarheiten.

Hier finden Sie ein gutes Format für Ihre negativen Testfälle.

  • Verwenden Sie eine Testfall-ID
  • Beschreiben Sie genau, was getestet werden soll
  • Notieren Sie alle Voraussetzungen für Ihren negativen Test
  • Skizzieren Sie die beteiligten Schritte
  • Festlegung klarer und objektiver Ergebnisse
  • Notieren Sie das tatsächliche Ergebnis Ihres Tests

 

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

#6. Planen Sie den Test

 

Jetzt müssen Sie Ihre Tests planen. Auch hier ist es wichtig, die Szenarien zu priorisieren, die die schwerwiegendsten negativen Folgen haben, wie z. B. Unfälle, oder bei denen es am wahrscheinlichsten ist, dass Probleme aufgedeckt werden.

 

Beispiel für einen negativen Testfall

 

Hier ist ein Beispiel für einen negativen Testfall.

Testfall-ID: TC001

Beschreibung: Überprüfen Sie, ob eine Fehlermeldung angezeigt wird, wenn der Benutzer eine ungültige E-Mail-Adresse eingibt

Vorbedingungen: Der Benutzer muss sich auf der Anmeldeseite der Anwendung befinden

Schritte: 1. Geben Sie eine ungültige E-Mail Adresse ein. 2. Drücken Sie „Anmelden“.

Erwartetes Ergebnis: Wenn der Benutzer auf „Anmelden“ klickt, erscheint eine Fehlermeldung, die besagt, dass eine falsche E-Mail-Adresse eingegeben wurde.

Ergebnis: Halten Sie fest, was passiert ist, als „Login“ ausgewählt wurde.

 

Beispiele für negative Szenarien beim Softwaretest

Checkliste Software-Testverfahren

Hier sind einige typische Szenarien, die Sie mit negativen Testmethoden überprüfen können.

 

1. Daten und Feldtypen

Wenn Sie schon einmal ein Online-Formular ausgefüllt haben, werden Sie wissen, dass diese Felder so eingestellt sind, dass sie bestimmte Arten von Daten akzeptieren. Einige sind nur Zahlen, während andere Datumsangaben, Text oder andere Arten von Daten akzeptieren.

Beim Negativtest für diese Felder werden ungültige Daten gesendet, z. B. die Eingabe von Buchstaben in ein numerisches Feld.

 

2. Erforderliche Felder

Auch hier sind obligatorische Felder ein gängiges Merkmal von Formularen und Anwendungen. Sie sind ein praktisches Hilfsmittel, um sicherzustellen, dass alle wichtigen Informationen erfasst werden, bevor der Benutzer zum nächsten Schritt übergeht.

Ein guter Testfall für diese Szenarien besteht darin, zu sehen, was passiert, wenn diese Felder leer gelassen werden. Im Idealfall sollte eine Fehlermeldung ausgelöst werden, die den Benutzer auffordert, das erforderliche Feld auszufüllen.

 

3. Angemessene Anzahl von Zeichen

Wenn Sie eine Anwendung mit Webseiten testen, haben Sie vielleicht ein Datenfeld, das eine begrenzte Anzahl von Zeichen erfordert. Dabei kann es sich um Benutzernamen, Telefonnummern, Registriernummern und so weiter handeln.

Sie können negative Testfälle für diese Felder erstellen, indem Sie Tests schreiben, bei denen Sie mehr als die maximal zulässigen Zeichen eingeben, um zu sehen, wie die Anwendung reagiert.

 

4. Datengrenzen und Grenzwerte

Bestimmte Formulare haben Felder mit festen Grenzen. Wenn Sie z. B. möchten, dass jemand etwas auf einer Skala von 100 bewertet, wären die Datengrenzen 1-100.

Erstellen Sie einen negativen Testfall, in dem Sie versuchen, 0, 101 oder andere negative oder positive Werte von 1-100 einzugeben.

 

Bewährte Praktiken für Negativtests

Unterschiede und Gemeinsamkeiten zwischen Alpha- und Beta-Tests

Es gibt mehrere bewährte Praktiken, um qualitativ hochwertige Negativtests zu gewährleisten. Hier sind einige Tipps, die Ihnen dabei helfen.

 

1. Definieren Sie Ihre ungültigen Eingaben:

Prüfen Sie die Entwicklungsdokumentation, Anwendungsfälle und UI/UX, um mögliche ungültige Eingaben zu verstehen und zu identifizieren. Achten Sie auf ungültige Datentypen, extreme Werte, fehlende Daten, leere Felder, unerwartete Formate und vieles mehr.

 

2. Verwenden Sie die Randwertanalyse:

Wie bereits erwähnt, skizzieren Sie Ihre Grenzwerte, um Grenzfälle zu finden, die unerwartete Reaktionen hervorrufen können.

 

3. Äquivalenzpartitionierung der Mitarbeiter:

Betrachten Sie Ihre Eingabedomänen und unterteilen Sie sie in Äquivalenzpartitionen mit gültigen und ungültigen Werten. Dieser Prozess trägt dazu bei, die Anzahl der zu schreibenden Testfälle zu reduzieren, denn wenn ein gleichwertiges Stück ungültiger Daten Probleme bei einer Eingabe verursacht, wird es wahrscheinlich in der gesamten Klasse vertreten sein.

 

4. Schlechte Benutzer imitieren:

Positive Tests verifizieren das erwartete Benutzerverhalten. Beim Negativtest wird untersucht, was passiert, wenn Menschen Ihre Anwendung missbrauchen. Denken Sie also über die verschiedenen Szenarien nach, in denen dies geschehen kann, und bilden Sie sie in Ihren Testfällen nach.

 

5. Lassen Sie sich bei Ihren Tests von Risiken und Auswirkungen leiten:

Kein Prüfer hat unbegrenzt Zeit. Irgendwann werden Sie schwierige Entscheidungen treffen müssen, weil Sie nicht alle unerwarteten Ergebnisse testen (oder gar kennen) können. Wenn Sie entscheiden müssen, welche Arten von Negativtests durchgeführt werden sollen, setzen Sie Prioritäten in den Bereichen, die die größten Risiken oder negativen Auswirkungen auf Ihr Produkt haben.

 

6. Überprüfung der Fehlerbehandlung:

Stellen Sie sicher, dass Sie die Fehlerbehandlung zu einem Teil Ihrer Tests machen und prüfen, ob die Fehlermeldungen sinnvoll und korrekt sind.

 

7. Automatisieren Sie so viel wie möglich:

Die Automatisierung eignet sich gut für alltägliche und sich wiederholende Aufgaben. Negative Tests erfordern jedoch immer noch einen manuellen Ansatz für explorative Tests und das Auffinden von Randfällen.

 

Die besten Negativtest-Tools für 2024

die besten kostenlosen und unternehmensweiten Softwaretest- und RPA-Automatisierungstools

Negative Softwaretests sind zwar in der Branche weit verbreitet, aber es mangelt an eindeutigen Werkzeugen für diese Aufgabe. Ein wichtiger Grund dafür ist die Vielseitigkeit der Negativtests. Darüber hinaus lassen sich viele der für Positivtests verwendeten Werkzeuge auch für Negativtests einsetzen, wenn man die Eingabedaten anpasst.

ZAPTEST ist aufgrund seiner Vielseitigkeit und Modularität das beste Werkzeug für Negativtests. Es ist benutzerfreundlich und anpassbar und bietet dank der plattform- und anwendungsübergreifenden Funktionen eine unschlagbare Flexibilität.

Datengesteuerte Prüfung und
Mutationstests
Funktionalität machen ZAPTEST perfekt für Negativtests. Darüber hinaus ist es dank seiner RPA Funktionen können Sie reale Benutzer simulieren, Tests wiederverwenden und mühelos Berichte und Dokumentationen erstellen. Kurz gesagt, die Fähigkeit von ZAPTEST, modernste Software-Automatisierungs- und Robotic-Process-Automation-Software auszuführen, macht es zu einem One-Stop-Shop für jede Automatisierungsaufgabe, einschließlich negativer Tests.

 

Abschließende Überlegungen

Negative Tests bei Softwaretests helfen Teams zu verstehen, wie ihre Anwendung mit unerwarteten Eingaben und ungültigen Daten umgehen wird. Während beim positiven Testen geprüft wird, ob Ihre Software wie vorgesehen funktioniert, hilft Ihnen das negative Testen herauszufinden, was passiert, wenn Benutzer Eingaben und Daten falsch auswählen. Beide Ansätze sind wichtig, wenn Sie eine solide und robuste Anwendung wollen, die den Belastungen der verschiedenen Benutzerinteraktionen gewachsen ist.

 

Download post as PDF

Alex Zap Chernyak

Alex Zap Chernyak

Founder and CEO of ZAPTEST, with 20 years of experience in Software Automation for Testing + RPA processes, and application development. Read Alex Zap Chernyak's full executive profile on Forbes.

Get PDF-file of this post

Virtual Expert

ZAPTEST

ZAPTEST Logo