Computers

Arten von Softwaretests

Autor: Peter Berry
Erstelldatum: 11 Juli 2021
Aktualisierungsdatum: 14 November 2024
Anonim
Softwaretests: Erklärung, Testebenen, Testablauf
Video: Softwaretests: Erklärung, Testebenen, Testablauf

Inhalt

Haley arbeitet in der Qualitätssicherung als Software-Tester. Sie ist verantwortlich für die Verwaltung von Testprojekten sowie für die Schulung neuer Tester.

Was ist Softwaretest?

Softwaretests sind ein schnelllebiges, wachsendes Feld. Oft kann es zu einem Missverständnis zwischen Testern, Entwicklern und dem Management hinsichtlich der Testterminologie kommen. Aus diesem Grund ist es wichtig, klare, gemeinsame Definitionen von Tests zu haben.

In diesem Artikel werden einige der gängigen Arten von Softwaretests behandelt. Es ist wichtig zu beachten, dass sich in der Praxis zwei (oder mehr) Testtypen leicht überschneiden können. Akademisch gesehen sind dies alles sehr unterschiedliche Begriffe, aber pragmatisch gesehen können sie beginnen, sich zu verschmelzen.

Ich werde auch nicht speziell auf Automatisierung als Testtyp eingehen, da die meisten dieser Testtypen entweder manuell oder automatisch mit Code durchgeführt werden können.


Häufige Arten von Softwaretests

  • Funktionsprüfung
  • Integrationstests
  • Black-Box-Test
  • White-Box-Test
  • Regressionstests
  • Rauchprüfung
  • Versuchsforschung
  • User Acceptance Testing

Hinweis: Dies ist keine vollständige Liste der Arten von Softwaretests.

Was ist Funktionstest?

Funktionstests sind eine Untergruppe anderer Testtypen. Funktionstests sind alle Black-Box-Tests (nicht Codeseiten), bei denen sichergestellt wird, dass die Software die entsprechenden Funktionen ausführt. Dies ist die Art von Test, die sicherstellt, dass die Anforderungen erfüllt werden.

Zu den Arten von Funktionstests gehören:

  • Vernunftprüfung
  • Rauchprüfung
  • Regressionstests
  • Integrationstests
  • Usability-Tests

Was ist Integrationstest?

Integrationstests sind unglaublich wichtig für Software, die auf einem Server-Client-Modell oder als verteiltes System funktioniert. Dies bedeutet, dass Anwendungen, die nicht nur auf dem Computer des Benutzers ausgeführt werden, und Anwendungen, die möglicherweise mehrere verschiedene Server im Back-End haben.


Ein Architekturbeispiel könnte sein:

  1. Der Hauptserver, auf dem das Dashboard einer Webanwendung ausgeführt wird.
  2. Ein separater Server, der ausschließlich die Datenbank enthält.
  3. Ein separater Server, auf dem Berichte oder Algorithmen für das System ausgeführt werden.
  4. Eine zusätzliche Software, mit der diese Anwendung eine Verbindung mit einer Drittanbieteranwendung herstellen kann.

Integrationstests für das oben beschriebene Szenario umfassen das Sicherstellen, dass jeder Server mit den entsprechenden anderen Servern kommunizieren kann, dass die richtigen Informationen von einem Dienst an den anderen weitergegeben werden usw.

Integrationstests können auch auf einer kleineren Ebene durchgeführt werden, sobald Entwickler Microservices oder kleine Code-Teile abgeschlossen haben, die mit anderen Teilen interagieren müssen.

Black-Box-Test

Black-Box-Tests sind ein weit gefasster Begriff für Tests, bei denen der Code nicht betrachtet wird.

Die Idee ist, dass das Produkt wie eine Black Box ist. Dem Benutzer ist es egal, was in der Black Box passiert, solange er die richtige Ausgabe von seiner Eingabe erhält.


Die meisten funktionalen manuellen Testfälle sind Black-Box-Tests.

White-Box-Test

White-Box-Tests konzentrieren sich eher auf die internen Eigenschaften der Anwendung als auf die Funktionalität der Verwendung des Produkts. Einer der Hauptvorteile von White-Box-Tests besteht darin, dass Fehler erkannt werden, bevor sie auf Benutzerebene angezeigt werden. Dies ist besonders nützlich für versteckte Fehler, die jetzt möglicherweise keine sichtbaren Fehler verursachen, aber Fehler mit weiteren Änderungen am Code verursachen.

Unit-Tests sind die häufigste Art von White-Box-Tests.

Regressionstests

Der Schwerpunkt der Regressionstests liegt darauf, sicherzustellen, dass keine neuen Funktionen, Architekturänderungen oder kürzlich durchgeführten Fehlerbehebungen versehentlich neue Fehler verursacht haben. Oft kann eine Codeänderung einen Kaskadeneffekt haben und Fehler in einem Bereich verursachen, der beim Testen dieses Fixes möglicherweise übersehen wird.

Regressionstests sind sehr nützlich, wenn in mehreren Bereichen viele Änderungen an einem Produkt vorgenommen wurden. Dies kann jedoch der zeitaufwändigste Testbereich sein. Im schlimmsten Fall muss das gesamte Produkt auf alle Anforderungen getestet werden.

Eine sehr wertvolle Fähigkeit ist die Fähigkeit, die richtige Menge und Art von Tests für einen Regressionstest auszugleichen.

Regressionstests werden normalerweise direkt vor der Freigabe eines Produkts durchgeführt.

Rauchprüfung

Rauchprüfungen, auch als Hygienetests bekannt, sind eine hochrangige Form der Prüfung. Die Rauchprüfung schließt die Happy-Path-Prüfung für die wichtigsten Funktionen des Produkts ab, während auf dieser Ebene nach kritischen Fehlern gesucht wird.

Dies hilft sicherzustellen, dass ein offensichtlicher kritischer Fehler in der Mitte des Tests nicht entdeckt wird, wenn ein schneller Klick dies gezeigt hätte.

Versuchsforschung

Explorative Tests finden statt, wenn einem Tester ein Bereich oder eine Funktionalität eines zu untersuchenden Produkts zugewiesen wird. Sie folgen keinen detaillierten Testfällen, sondern können sie als lose definiertes Skript verwenden. Explorative Tests konzentrieren sich in der Regel auf viele negative Tests.

Diese Art des Testens konzentriert sich in der Regel auf die Frage "Ich frage mich, was passieren würde, wenn ich?" Tester suchen nach Dingen, die nicht in den Anforderungen enthalten sind. B. ein Produkt hinzufügen und das Produkt fünfmal aus einem Online-Warenkorb entfernen und dann versuchen, etwas anderes zu kaufen.

User Acceptance Testing

User Acceptance Testing (UAT) ist ein letzter Schritt im Testprozess. Dies ist der Zeitpunkt, an dem der Endbenutzer eines Produkts das Produkt verwendet. Das Produkt sollte zu diesem Zeitpunkt stabil und produktionsbereit sein.

Sobald der Benutzer das Produkt "akzeptiert", kann es in die Produktion gehen.

Dies ist bei Projekten mit einem einzelnen Kunden üblicher.

Dieser Artikel ist genau und nach bestem Wissen des Autors. Der Inhalt dient nur zu Informations- oder Unterhaltungszwecken und ersetzt nicht die persönliche Beratung oder professionelle Beratung in geschäftlichen, finanziellen, rechtlichen oder technischen Angelegenheiten.

Für Sie

Unsere Wahl

Handy-Etikette-Tipps für die Moderne
Telefone

Handy-Etikette-Tipps für die Moderne

Cynthia i t eine digitale Vermarkterin, Autorin und Kün tlerin. ie chreibt über eine Vielzahl von Themen, in be ondere prachen, Kun t und Kultur.Die Erfindung de Handy war ein enormer Fort c...
5 Tipps zur Videobearbeitung
Computers

5 Tipps zur Videobearbeitung

John i t ein leiden chaftlicher chrift teller, pieler und Gitarrenliebhaber. Ehemaliger Reparaturbetrieb für Automatikgetriebe, chweißer und Entwickler von Hobby- pielen.Videoinhalte ind au ...