de_DEen_USes_ESfa_IRfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

Was ist Software-Testing?

Software-Testing ist die Prüfung der Artefakte und des Verhaltens der zu testenden Software durch Validierung und Verifizierung. Software-Testing bietet außerdem eine objektive, unabhängige Sicht auf die Software, die Unternehmen ermöglicht, die Risiken der Softwareimplementierung zu erkennen und zu verstehen.

Software-Testing kann Benutzer oder Auftraggeber objektive, unabhängige Informationen über die Softwarequalität und das Risiko von Softwareausfällen liefern. Ein Hauptzweck des Testens ist es, Softwarefehler zu erkennen, um Fehler zu finden und zu beheben. Testen kann nicht bestimmen, dass ein Produkt unter allen Bedingungen ordnungsgemäß funktioniert, sondern nur, dass es unter bestimmten Bedingungen nicht ordnungsgemäß funktioniert.

Anwendungsfalldiagramm-Testing

Anwendungsfalldiagramm-Testing ist eine funktionale Black-Box-Testtechnik, die Testern hilft, Test-Szenarien zu definieren und das gesamte System von Anfang bis Ende auf transaktionsbasiertem Wege zu testen, wie Ivar Jacobson in seinem Buch „Object-Oriented Software Engineering“ beschreibt. Durch diese Technik erstellt das Testteam ein Test-Szenario, das das gesamte Software-System von Anfang bis Ende auf Basis der Funktionalität jeder Funktion testen kann. Anwendungsfalldiagramm-Testing ist eine Interaktion zwischen Benutzer und Software-Anwendung und hilft daher, das System aus der Sicht des Benutzers zu testen. Hier sind einige Vorteile.

Was ist ein Anwendungsfalldiagramm?

  • Ein Anwendungsfalldiagramm wird in narrativer Sprache verfasst und beschreibt die funktionalen Anforderungen eines Systems aus der Sicht des Endbenutzers.
  • Ein Anwendungsfalldiagramm wird mit der Unified Modeling Language erstellt, wobei jeder Schritt durch seinen Namen in einer ovalen Form dargestellt wird;
  • Ein Akteur wird durch ein Strichmännchen dargestellt, dessen Name darunter geschrieben ist; jede Aktion wird durch eine Verbindung zwischen dem Akteur und einem Anwendungsfalldiagramm gekennzeichnet;
  • Die Systemgrenzen werden durch ein Rechteck um das Anwendungsfalldiagramm gekennzeichnet.

Elemente eines Anwendungsfalldiagramms

Abhängig von der gewünschten oder erforderlichen Tiefe und Komplexität beschreibt ein Anwendungsfalldiagramm eine Kombination der folgenden Elemente.

  • Akteur – jeder, der ein Verhalten ausführt (wer das System nutzt)
  • Primärer Akteur – Stakeholder, die die Interaktion mit dem System initiieren, um ein Ziel zu erreichen
  • Sekundärer Akteur isteiner, von dem das System Unterstützung benötigt, um das Anwendungsfalldiagramm abzuschließen.
  • Voraussetzungen – müssen vor und nach der Ausführung des Anwendungsfalldiagramms erfüllt sein
  • Auslöser – Dies ist das Ereignis, das die Ausführung des Anwendungsfalldiagramms auslöst

Anwendungsfalldiagramm-Szenarien undAlternative PfadePfade

Die Use-Case-Modellierung ist eine formale Methode zur Darstellung der Interaktion eines Geschäfts-Systems mit seiner Umgebung und veranschaulicht die Aktivitäten, die von den Benutzern des Systems ausgeführt werden. Sie ist auch eine auf Szenarien basierende Technik in UML. Ein Use Case ist eine Reihe von Schritten, die erforderlich sind, um eine bestimmte Aufgabe oder ein Ziel zu erreichen. Typischerweise kann ein Use Case mehrere Pfade haben; jeder Pfad gilt als Use-Case-Szenario. Einfach ausgedrückt ist ein Use Case ein Ziel mit verschiedenen Prozessen, und ein Use-Case-Szenario stellt einen linearen und direkten Pfad durch einen dieser Vorgänge dar.

Ein Szenario ist eine Szene, die eine Interaktion mit einem vorgeschlagenen System veranschaulicht. Ein Szenario ist ein Werkzeug, das während der Anforderungsanalyse verwendet wird, um eine spezifische Nutzung eines vorgeschlagenen Systems zu beschreiben. Szenarien erfassen das System aus der Perspektive des Außenstehenden, beispielsweise eines Benutzers, anhand konkreter Beispiele. Ein Use Case kann mehrere „Pfade“ enthalten, die ein Benutzer während der Interaktion mit dem System wählen kann; jeder Pfad wird als Szenario bezeichnet.

  • Primäres Erfolgs-Szenario [Grundpfad] – Es gibt keine Fehler im Use Case.
  • Alternative Pfade [Alternativer Pfad] – Diese Pfade sind Variationen des Hauptthemas. Es handelt sich um Ausnahmen, die auftreten, wenn etwas auf Systemebene schief läuft.

Beispiel für Use-Case-Tests

Ein Use-Case-Szenario wird als Interaktion zwischen der Anwendung und den Akteuren (Benutzern) betrachtet. Diese Use Cases werden verwendet, um die Anforderungen zu beschreiben und können daher auch als Grundlage für die Akzeptanztests dienen.

Am Beispiel einer Bankommatmachine zeigen wir erfolgreiche und erfolglose Fälle. In diesem Diagramm können wir die Interaktion zwischen A (Akteur – in diesem Fall Personen) und S (System) sehen. Schritte 1 bis 5 sind Erfolgsfälle, die anzeigen, dass die Karte und das Passwort überprüft wurden und dem Akteur der Zugriff auf das Konto gewährt wird.

  1. A: Karte einwerfen,
  2. S: Prüft die Karte und fordert eine PIN an,
  3. A: Gibt eine PIN ein,
  4. S: Prüft die PIN und
  5. S: Gewährt Zugriff auf das Konto.

Es können jedoch während des Erweiterungsprozesses drei weitere Szenarien auftreten, beispielsweise bei der Überprüfung der Karte, wenn das System feststellt, dass etwas falsch ist. Diese Erweiterungsfälle können unten aufgelistet werden. Es handelt sich um 2a, 4a und 4b, wie in der Abbildung unten gezeigt.

2a) S: Karte ist ungültig (Nachricht wird angezeigt und die Karte wird abgelehnt)
3a) S: Passwort ungültig (Nachricht angezeigt und Aufforderung zum erneuten Versuch – zweimal), und
4a) S: Passwort dreimal ungültig (schluckt Karte und beendet)

Use-Case-Szenarien als Testfälle

Ein Use-Case-Szenario ist im Grunde ein Dokument von Use Cases. Mit anderen Worten beschreibt es die Aktionen, die ein Benutzer möglicherweise mit einer Anwendung oder einem System ausführen könnte. Es beschreibt auch die Situation, in der sich der Benutzer während der Nutzung der Software befinden könnte. Um genaue Test-Szenarien zu erstellen, sammeln wir oft Eingaben von Kunden, Endbenutzern und/oder Stakeholdern. Dies hilft dabei, alle möglichen Use-Case-Szenarien effektiv abzudecken und ermöglicht eine umfassende Prüfung aller Geschäftsabläufe des Use Cases.

Use Case im Vergleich zu Testfällen

Use Cases und Testfälle sind Begriffe, die häufig im Bereich der Software-Tests verwendet werden und eng miteinander verbunden sind. Ein Use Case dient dazu, festzulegen, wie ein System, das eine bestimmte Aufgabe erfüllen soll, verwendet werden soll. Im Gegensatz dazu ist ein Testfall eine Sammlung von Testeingaben, Ausführungsbedingungen und erwarteten Ergebnissen, die für ein bestimmtes Testziel entwickelt wurden.

Vergleichsparameter Use Case Testfall
Definition Eine Folge von Aktionen, die verwendet wird, um die Interaktion zwischen der Rolle und dem System zur Erreichung eines festgelegten Ziels zu beschreiben, Eine Gruppe von Testeingaben, Bedingungen und Variablen, durch die die Eigenschaften der Software definiert werden.
Ziel Um die letzte Operation zu erreichen, müssen alle sequenziellen Operationen ausgeführt werden die Validierung der Software, ob sie einwandfrei funktioniert oder nicht.
Iteration es folgt verschiedenen Pfaden es folgt einem einzelnen Testfall, der jeweils einzeln getestet wird
Abhängigkeit es ist von den Anforderungen abhängig es ist von dem Anwendungsfall abhängig
Anforderung Dokumente und Forschung sind erforderlich Testeingabenskripte und jedes Testskript erfüllt einen Schritt
Abschluss alle Schritte einmal abschließen Der Test wird wiederholt durchgeführt, bis er abgeschlossen ist.
Interaktion Benutzer Ergebnisse
Arbeit es funktioniert, indem es die schrittweise Funktionsfähigkeit der Software befolgt. es wird mit Hilfe von Testern durchgeführt, um die Software zu validieren