logo

Funktionsprüfung

Bevor wir mit dem Funktionstest fortfahren, sollten wir wissen, was Testen ist.

Was ist Testen?

Vereinfacht ausgedrückt besteht der Test darin, das tatsächliche Ergebnis mit dem erwarteten Ergebnis zu vergleichen. Es werden Tests durchgeführt, um festzustellen, ob alle Funktionen wie erwartet funktionieren.

Was ist Softwaretest?

Softwaretests sind eine Technik, um zu überprüfen, ob das tatsächliche Ergebnis mit dem erwarteten Ergebnis übereinstimmt, und um sicherzustellen, dass die Software keine Mängel oder Fehler aufweist.

Softwaretests stellen sicher, dass die Anwendung keinen Fehler aufweist oder die Anforderungen nicht dem tatsächlichen Bedarf entsprechen. Softwaretests können entweder manuell oder automatisiert durchgeführt werden.

Unter Softwaretests versteht man auch die Verifizierung der zu testenden Anwendung (AUT).

gzip für Linux

Es gibt zwei Arten von Tests:

Funktionsprüfung

Funktionsprüfung:

Dabei handelt es sich um eine Art Softwaretest, mit dem die Funktionalität der Softwareanwendung überprüft wird, also ob die Funktion gemäß der Anforderungsspezifikation funktioniert. Beim Funktionstest wird jede Funktion getestet, indem der Wert angegeben, die Ausgabe bestimmt und die tatsächliche Ausgabe mit dem erwarteten Wert überprüft wird. Als Black-Box-Test durchgeführter Funktionstest, der bestätigt, dass sich die Funktionalität einer Anwendung oder eines Systems wie erwartet verhält. Dies geschieht, um die Funktionalität der Anwendung zu überprüfen.

Funktionstests werden auch als Black-Box-Tests bezeichnet, da sie sich auf die Anwendungsspezifikation und nicht auf den eigentlichen Code konzentrieren. Der Tester muss nur das Programm und nicht das System testen.

Ziel des Funktionstests

Der Zweck des Funktionstests besteht darin, die primäre Eingabefunktion, unbedingt nutzbare Funktion und den Ablauf der Bildschirm-GUI zu überprüfen. Beim Funktionstest wird die Fehlermeldung angezeigt, sodass der Benutzer problemlos durch die Anwendung navigieren kann.

Wie läuft der Funktionstest ab?

Tester folgen beim Funktionstest den folgenden Schritten:

  • Der Tester überprüft die Anforderungsspezifikation in der Softwareanwendung.
  • Nach der Analyse erstellt der Anforderungsspezifikationstester einen Plan.
  • Nach der Planung der Tests entwirft der Tester den Testfall.
  • Nach dem Entwurf des Tests erstellt der Falltester ein Dokument der Rückverfolgbarkeitsmatrix.
  • Der Tester führt den Testfallentwurf aus.
  • Analyse der Abdeckung zur Untersuchung des abgedeckten Testbereichs der Anwendung.
  • Das Fehlermanagement sollte zur Behebung von Fehlern beitragen.
Funktionsprüfung

Was ist beim Funktionstest zu testen? Erklären

Das Hauptziel des Funktionstests ist die Überprüfung der Funktionalität des Softwaresystems. Es konzentriert sich auf:

    Grundlegende Benutzerfreundlichkeit:Beim Funktionstest geht es darum, die Benutzerfreundlichkeit des Systems zu testen. Es prüft, ob ein Benutzer problemlos frei durch Bildschirme navigieren kann.Barrierefreiheit:Funktionstests testen die Zugänglichkeit der Funktion.Hauptfunktion:Der Schwerpunkt liegt auf dem Testen der Hauptfunktion.Fehlerbedingung:Mithilfe von Funktionstests wird der Fehlerzustand überprüft. Es prüft, ob die Fehlermeldung angezeigt wird.

Erklären Sie den gesamten Prozess zur Durchführung von Funktionstests.

Zur Durchführung eines Funktionstests sind die folgenden Schritte erforderlich:

  • Es besteht die Notwendigkeit, die Softwareanforderungen zu verstehen.
  • Testeingabedaten identifizieren
  • Berechnen Sie das erwartete Ergebnis mit den ausgewählten Eingabewerten.
  • Testfälle ausführen
  • Vergleich zwischen dem tatsächlichen und dem berechneten Ergebnis
Funktionsprüfung

Erklären Sie die Arten von Funktionstests.

Das Hauptziel des Funktionstests besteht darin, die Funktionalität der Komponente zu testen.

Funktionstests sind in mehrere Teile unterteilt.

Hier sind die folgenden Arten von Funktionstests.

SQL-Reihenfolge nach Zufall
Funktionsprüfung

Unit-Tests: Unit-Tests ist eine Art Softwaretest, bei dem die einzelne Einheit oder Komponente der Software getestet wird. Unit-Tests: Untersuchen Sie die verschiedenen Teile der Anwendung. Durch Unit-Tests werden auch Funktionstests durchgeführt, da Unit-Tests sicherstellen, dass jedes Modul ordnungsgemäß funktioniert.

Der Entwickler führt Unit-Tests durch. Unit-Tests werden in der Entwicklungsphase der Anwendung durchgeführt.

Rauchtest: Funktionstest durch Rauchtest. Die Rauchprüfung umfasst nur die grundlegende (Funktions-)Funktionalität des Systems. Rauchtests sind bekannt als „ Build-Verifizierungstests .' Ziel der Rauchprüfung ist es sicherzustellen, dass die wichtigsten Funktionen funktionieren.

Beim Smoke-Test wird beispielsweise überprüft, ob die Anwendung erfolgreich gestartet wurde, und es wird überprüft, ob die Benutzeroberfläche reagiert.

Prüfung der geistigen Gesundheit: Prüfung der geistigen Gesundheit setzt voraus, dass das gesamte Geschäftsszenario auf hoher Ebene ordnungsgemäß funktioniert. Es werden Sanitätstests durchgeführt, um die Funktionalität/behobene Fehler zu überprüfen. Ein Gesundheitstest bringt kaum Fortschritte als ein Rauchtest.

Die Anmeldung funktioniert beispielsweise einwandfrei. alle Tasten funktionieren ordnungsgemäß; Nach dem Klicken auf die Schaltfläche ist die Navigation auf der Seite abgeschlossen oder nicht.

Regressionstests: Diese Art von Tests konzentriert sich darauf, sicherzustellen, dass die Codeänderungen keine Nebenwirkung auf die bestehende Funktionalität des Systems haben. Regressionstests geben an, wann ein Fehler im System auftritt, nachdem der Fehler behoben wurde. Regressionstests konzentrieren sich darauf, ob alle Teile funktionieren oder nicht. Regressionstests konzentrieren sich darauf, ob es Auswirkungen auf das System gibt.

Integrationstests: Integrationstests einzelne Einheiten kombiniert und als Gruppe getestet. Der Zweck dieser Tests besteht darin, Fehler im Zusammenspiel der integrierten Einheiten aufzudecken.

Entwickler und Tester führen Integrationstests durch.

White-Box-Tests: White-Box-Tests ist bekannt als Clear-Box-Test, Code-basiertes Testen, Strukturtest, umfangreiches Testen und Glass-Box-Test, Transparent-Box-Test. Es handelt sich um eine Softwaretestmethode, bei der die interne Struktur/das interne Design/die getestete Implementierung dem Tester bekannt ist.

Der White-Box-Test erfordert die Analyse der internen Struktur der Komponente oder des Systems.

Black-Box-Tests: Es wird auch als Verhaltenstest bezeichnet. Bei diesem Test ist die interne Struktur/das interne Design/die interne Implementierung dem Tester nicht bekannt. Bei dieser Art von Tests handelt es sich um Funktionstests. Warum wir diese Art von Tests als Black-Box-Tests bezeichnen, kann der Tester bei diesem Test den internen Code nicht sehen.

Beispielsweise testet ein Tester ohne Kenntnis der internen Strukturen einer Website die Webseiten, indem er mithilfe des Webbrowsers Eingaben bereitstellt und die Ausgabe anhand des erwarteten Ergebnisses überprüft.

User Acceptance Testing: Dabei handelt es sich um eine Art Test, der vom Kunden durchgeführt wird, um das System gemäß den Anforderungen zu zertifizieren. Die letzte Testphase ist der Benutzerakzeptanztest, bevor die Software auf den Markt oder in die Produktionsumgebung freigegeben wird. UAT ist eine Art Black-Box-Test, an dem zwei oder mehr Endbenutzer beteiligt sind.

Erneutes Testen: Erneutes Testen ist eine Testart, die durchgeführt wird, um zu überprüfen, ob die Testfälle, die bei der endgültigen Ausführung nicht erfolgreich waren, erfolgreich bestanden werden, nachdem die Fehler behoben wurden. Normalerweise ordnet der Tester den Fehler zu, wenn er ihn beim Testen des Produkts oder seiner Komponente findet. Der Fehler wird einem Entwickler zugewiesen und er behebt ihn. Nach der Behebung wird der Fehler einem Tester zur Überprüfung zugewiesen. Diese Prüfung wird als Wiederholungsprüfung bezeichnet.

Datenbanktests: Beim Datenbanktest handelt es sich um eine Testart, bei der das Schema, die Tabellen, Trigger usw. der zu testenden Datenbank überprüft werden. Beim Datenbanktest können komplexe Abfragen erstellt werden, um die Datenbank einem Belastungs-/Stresstest zu unterziehen und ihre Reaktionsfähigkeit zu überprüfen. Es prüft die Datenintegrität und -konsistenz.

Beispiel: Betrachten wir eine Bankanwendung, bei der ein Benutzer eine Transaktion durchführt. Nach den folgenden Datenbanktests sind die Dinge nun wichtig. Sie sind:

vollständige Formidee
  • Die Anwendung speichert die Transaktionsinformationen in der Anwendungsdatenbank und zeigt sie dem Benutzer korrekt an.
  • Bei diesem Vorgang gehen keine Informationen verloren
  • Die Anwendung speichert keine Informationen zu teilweise durchgeführten oder abgebrochenen Vorgängen.
  • Der Zugriff auf die Benutzerinformationen ist Einzelpersonen nicht gestattet

Ad-hoc-Tests: Ad-hoc-Tests sind informelle Tests, deren Ziel darin besteht, das System zu durchbrechen. Bei dieser Art von Softwaretests handelt es sich um ungeplante Aktivitäten. Zur Erstellung der Testfälle folgt kein Testdesign. Ad-hoc-Tests werden nach dem Zufallsprinzip für jeden Teil der Anwendung durchgeführt. Es unterstützt keine strukturierte Testmethode.

Wiederherstellungstests: Wiederherstellungstests wird verwendet, um zu definieren, wie gut eine Anwendung nach Abstürzen, Hardwarefehlern und anderen Problemen wiederhergestellt werden kann. Der Zweck des Wiederherstellungstests besteht darin, die Fähigkeit des Systems zur Wiederherstellung nach Testfehlerpunkten zu überprüfen.

Statische Tests: Statische Tests ist eine Softwaretesttechnik, mit der wir Softwarefehler überprüfen können, ohne sie tatsächlich auszuführen. Statische Tests werden durchgeführt, um Fehler in der frühen Entwicklungsphase zu vermeiden, da es einfacher ist, Fehler in den frühen Phasen zu finden. Statische Tests werden verwendet, um Fehler zu erkennen, die bei dynamischen Tests möglicherweise nicht gefunden werden.

Warum verwenden wir statische Tests?

Statische Prüfung hilft, den Fehler im Frühstadium zu finden. Mit Hilfe von statischen Tests können so die Entwicklungszeiten verkürzt werden. Es reduziert die Testkosten und -zeit. Statische Tests werden auch für die Entwicklungsproduktivität verwendet.

Komponententests: Komponententests ist auch eine Art Softwaretest, bei dem der Test für jede Komponente einzeln durchgeführt wird, ohne sie in andere Teile zu integrieren. Komponententests sind ebenfalls eine Art Black-Box-Tests. Komponententests werden auch als Unit-Tests, Programmtests oder Modultests bezeichnet.

Gray-Box-Test: Gray-Box-Test definiert als eine Kombination aus White-Box- und Black-Box-Tests. Gray-Box-Tests sind eine Testtechnik, die mit begrenzten Informationen über die interne Funktionalität des Systems durchgeführt wird.

Funktionsprüfung

Welche Funktionstesttools gibt es?

Der Funktionstest kann neben manuellen Tests auch auf andere Weise durchgeführt werden. Diese Tools vereinfachen den Testprozess und helfen dabei, genaue und nützliche Ergebnisse zu erhalten.

Es handelt sich um eine der wesentlichen und prioritären Techniken, die vor dem Entwicklungsprozess beschlossen und spezifiziert wurden.

Die für Funktionstests verwendeten Tools sind:

Werkzeuge Merkmale/Eigenschaften
Eigentlich
  • Es handelt sich um ein Open-Source- und Automatisierungstesttool, das unter der Open-Source-Lizenz Apache License veröffentlicht wird und zum Testen der Webanwendung verwendet wird.
  • Sahi ist in Java und JavaScript geschrieben und wird für die meisten Testtechniken berücksichtigt.
  • Es läuft als Proxyserver; es ist browserunabhängig.
SoapUI
  • Es handelt sich um ein Open-Source-Funktionstesttool, das zum Testen von Webanwendungen verwendet wird.
  • Es ist einfach und leicht zu gestalten.
  • Es unterstützt mehrere Umgebungen, d. h. die Zielumgebung kann jederzeit eingerichtet werden.
Wasser
  • Watir ist eine Kurzform für das Testen von Webanwendungen in Ruby und ein Open-Source-Tool zur Automatisierung von Webbrowsern./li>
  • Es verwendet eine Ruby-Skriptsprache, die prägnant und einfach zu verwenden ist./li>
  • Watir unterstützt mehrere Browser auf verschiedenen Plattformen.
Selen
  • Das Open-Source-Tool, das für Funktionstests sowohl für Webanwendungen als auch für Desktop-Anwendungen verwendet wird.
  • Es automatisiert Browser und Webanwendungen zu Testzwecken.
  • Es bietet die Flexibilität, den automatisierten Testfall anzupassen
  • Bietet den Vorteil, Testskripte gemäß den Anforderungen mithilfe eines Webtreibers zu schreiben.
Canoo WebTest
  • Ein Open-Source-Tool zur Durchführung von Funktionstests der Webanwendung.
  • Plattformunabhängig
  • Einfach und schnell
  • Einfach zu erweitern, um wachsenden und neuen Anforderungen gerecht zu werden.
Gurke
  • Cucumber ist ein Open-Source-Testtool, das in der Ruby-Sprache geschrieben ist. Dieses Tool eignet sich am besten für die testgetriebene Entwicklung. Es wird zum Testen vieler anderer Sprachen wie Java, C# und Python verwendet. Gurke zum Testen mit etwas Programmierung.

Was sind die Vorteile von Funktionstests?

Vorteile des Funktionstests sind:

  • Es entsteht ein fehlerfreies Produkt.
  • Es sorgt dafür, dass der Kunde zufrieden ist.
  • Es stellt sicher, dass alle Anforderungen erfüllt sind.
  • Es stellt das ordnungsgemäße Funktionieren aller Funktionen einer Anwendung/Software/eines Produkts sicher.
  • Es stellt sicher, dass die Software/das Produkt wie erwartet funktioniert.
  • Es sorgt für Sicherheit und Schutz.
  • Es verbessert die Qualität des Produkts.

Beispiel: Hier geben wir ein Beispiel für eine Bankensoftware. Bei einer Bank, wenn Geld von Bank A an Bank B überwiesen wird und Bank B nicht den korrekten Betrag erhält, die Gebühr erhoben wird oder das Geld nicht in die richtige Währung umgerechnet wird oder eine falsche Überweisung vorliegt oder Bank A keine Kontoauszugsbestätigung erhält von Bank B, dass die Zahlung eingegangen ist. Diese Probleme sind kritisch und können durch ordnungsgemäße Funktionstests vermieden werden.

Java-PGM

Was sind die Nachteile von Funktionstests?

Nachteile des Funktionstests sind:

  • Bei Funktionstests kann ein kritischer und logischer Fehler im System übersehen werden.
  • Dieser Test ist keine Garantie dafür, dass die Software live geht.
  • Die Möglichkeit, redundante Tests durchzuführen, ist bei Funktionstests hoch.

Einpacken

Daraus können wir leicht schließen, dass Funktionstests unerlässlich sind, um eine solide Grundlage für ein erstklassiges Softwareprodukt zu schaffen. Es dient als Grundlage der Struktur und ist ein entscheidender Bestandteil jeder Testroutine.