application testing into basics software testing
Einführung in das Testen von Anwendungen
Application Testing ist eine solche Aktivität, die von fast jedem Software-Tester in seiner Karriere häufig durchgeführt wird. Diese beiden Wörter sind in praktischen Aspekten äußerst weit gefasst. Hier werden jedoch nur die Kernbereiche und die wichtigsten Bereiche erörtert. Der Zweck dieses Artikels besteht darin, alle Hauptbereiche zu berühren, damit die Leser alle grundlegenden Informationen an einem einzigen Ort erhalten.
In einem Einzeiler können wir sagen, dass das Testen von Anwendungen ein Prozess ist, durch den die Funktionalität, Benutzerfreundlichkeit und Konsistenz der gesamten Anwendung getestet werden.
Was du lernen wirst:
Anwendungstests: Erläutern der Grundlagen des Softwaretests
Kategorien von Anwendungen
Ob es sich um eine kleine Taschenrechnersoftware mit nur den grundlegenden Rechenoperationen oder eine Online-Unternehmenslösung handelt; Es gibt drei Kategorien von Anwendungen:
Bei Desktopanwendungen sollten beim Testen die Benutzeroberfläche, die Geschäftslogik, die Datenbank, Berichte, Rollen und Rechte, die Integrität, Benutzerfreundlichkeit, Funktionalität, Leistung, Sicherheit, Hardware- und Softwarekompatibilität sowie der Datenfluss berücksichtigt werden.
Bei Webanwendungen sollten Tester der Leistung, Auslastung und Sicherheit der Anwendung eine ausreichende Bedeutung beimessen.
Andere Haupttestarten, die unter Webanwendungstests behandelt werden, sind Funktionstests, Cross-Browser-Tests, UAT-, Beta-Tests, Regressionstests, Kompatibilitätstests, Rauchtests, Erkundungstests, Kompatibilitäts- und mehrsprachige Supporttests sowie Stresstests.
Für mobile Anwendungen sollten hauptsächlich UI-Tests, regelbasierte Tests, Regressionstests, Funktions- und Sicherheitstests durchgeführt werden.
AUT (Anwendung im Test) ist also entweder die Desktop-Software oder eine Website oder eine mobile App.
Methoden für Anwendungstests
Dies ist ein bekannter und viel diskutierter Aspekt, bei dem es nur drei allgemein anerkannte Testmethoden gibt:
# 1) Schwarze Box :: Beim Black-Box-Test wird der AUT anhand seiner Anforderungen unter Berücksichtigung der Eingaben und erwarteten Ausgaben validiert, unabhängig davon, wie die Eingaben in Ausgaben umgewandelt werden. Tester befassen sich am wenigsten mit internen Strukturen oder Codes, die die Geschäftslogik der Anwendung implementieren.
Es gibt vier Haupttechniken zum Entwerfen von Testfällen für Black-Box-Tests:
- BVA ( Grenzwertanalyse )
- EP (Equivalence Partitioning)
- Entscheidungstabellen
- Zustandsübergangstabellen (und Diagramme)
Black-Box-Tests werden üblicherweise für funktionale, nicht funktionale und Regressionstests eingesetzt.
#zwei) Weiße Kiste :: Der Hauptfokus dieser Methodik liegt auf der Validierung, wie die Geschäftslogik der Anwendung durch den Code / das Programm implementiert wird.
Die interne Struktur der Anwendung wird hier getestet und es stehen folgende Techniken zur Verfügung:
- Code-Abdeckung
- Pfadabdeckung
Beide oben aufgeführten Techniken enthalten mehrere andere Strategien, die in einem anderen Artikel erörtert werden können. Einige Techniken werden in der Testfall-Entwurfstechniken Thema.
#3) Graue Box :: In der Praxis ist dies eine Mischung aus Black Box und White Box.
kostenlose DVD-Ripping-Software für Windows 10
Bei dieser Methodik testet hauptsächlich der Tester die Anwendung mit dem Black-Box-Ansatz. Bei einigen geschäftskritischen oder anfälligen Modulen einer Anwendung erfolgt das Testen jedoch über eine weiße Box.
Anwendung Testwerkzeuge
Es gibt viele Tools zum Testen von Anwendungen heute auf dem Markt erhältlich. Dazu gehören sowohl kostenpflichtige als auch Open-Source-Tools. Darüber hinaus sind einige Tools zweckspezifisch.
Zum Beispiel, UI-Tests, Funktionstests, DB-Tests, Lasttests, Leistungstests, Sicherheitstests und Tests zur Linkvalidierung usw. Einige Tools sind jedoch stark genug, um mehrere wichtige Aspekte einer Anwendung zu testen.
Das wichtigste Konzept beim „Anwendungstest“ ist der Funktionstest. Daher konzentrieren wir uns auf Tools für Funktionstests.
Hier finden Sie eine Liste der wichtigsten und grundlegendsten Funktionen, die von fast allen Tools für Funktionstests bereitgestellt werden.
- Aufnehmen und abspielen
- Parametrisieren Sie die Werte
- Script Editor
- Ausführen (Test oder Skript mit Debug- und Update-Modus)
- Bericht über die Sitzung ausführen
Verschiedene Anbieter bieten einige spezifische Funktionen, die ihr Produkt für andere Konkurrenzprodukte einzigartig machen. Die fünf oben aufgeführten Funktionen sind jedoch die häufigsten und finden sich in fast allen Tools für Funktionstests.
Es folgt die Liste der wenigen weit verbreiteten Funktionstestwerkzeuge .
1) HP QTP ( Schnelltest Professional )
zwei) Selen
3) IBM Rational Robot
4) Test abgeschlossen
5) Zum Testen drücken
6) Telerik
Software-Testplan (BITTE)
Für jede Aktivität ist immer eine gewisse Planung erforderlich, und dies gilt auch für Softwaretests. Ohne einen richtigen Plan besteht immer ein hohes Risiko, während des Tests abgelenkt zu werden. Wenn dieses Risiko tatsächlich eintritt, können die Ergebnisse schrecklich sein.
5 Hauptteile eines guten Testplans
# 1) Geltungsbereich
- Übersicht über AUT
- Zu testende Merkmale (oder Bereiche)
- Ausschlüsse (Merkmale oder Bereiche, die nicht getestet werden sollen) mit Grund
- Abhängigkeiten (von Testaktivitäten voneinander, falls vorhanden)
# 2) Ziele: Dieser Abschnitt beschreibt die Ziele der Testaktivität, z. Validierung von Fehlerkorrekturen, Hinzufügen neuer Funktionen oder Überarbeitung von AUT usw.
# 3) Fokus: Dieser Abschnitt beschreibt, welcher Aspekt der Anwendung in den Test einbezogen wird, z. Sicherheit, Funktionalität, Benutzerfreundlichkeit, Zuverlässigkeit, Leistung oder Effizienz usw.
# 4) Ansatz: In diesem Abschnitt wird beschrieben, welche Testmethode für welche AUT-Bereiche angewendet wird. Zum Beispiel im STP einer ERP-Anwendung; Der Ansatzabschnitt kann die Information enthalten, dass Black-Box-Tests der Ansatz für die Gehaltsabrechnung sind. Auf der anderen Seite wird der Ansatz für Berichte ein Gray-Box-Test sein.
# 5) Zeitplan: In diesem Abschnitt wird beschrieben, wer was, wo, wann und wie auf dem AUT tun wird. Der Zeitplanabschnitt ist in der Tat ein „4Ws und 1H“ des STP. Normalerweise wird der Zeitplan als einfache Tabelle erstellt, aber jede Organisation kann ein eigenes angepasstes Format haben, das ihren eigenen Anforderungen entspricht.
Sobald der Testplan fertig ist und die Anwendung entwickelt wird, entwerfen und dokumentieren die Tester die Testfälle. Im obigen Abschnitt „Anwendungstests - Methoden“ habe ich die TC-Entwurfstechniken aufgelistet.
Anwendungstestzyklen
Sobald das AUT zum Testen bereit ist, beginnt die praktische Phase des Testzyklus, in der Tester die Testfälle tatsächlich auf dem AUT ausführen. Beachten Sie, dass hier der Testzyklus unabhängig von Teststufen (Einheit, Modul, Integration, System- und Benutzerakzeptanz) und Testumgebungen (Entwicklung, Qualitätssicherung, Client-Replikat, Live) erläutert wird.
# 1) Rauchprüfung :: Dies ist der allererste Testzyklus. Der Zweck der Rauchprüfung besteht darin, sicherzustellen, dass die Anwendung nicht abstürzt und für weitere Tests geeignet ist. Dieser Schritt ist breit und flach.
# 2) Sanity Testing: Dies ist der zweite Testzyklus. Damit soll überprüft werden, ob ein bestimmtes Modul ordnungsgemäß funktioniert und für vollständige Tests geeignet ist. Dieser Schritt ist eng und tief.
Pro-Tipp: Normalerweise steht nicht genügend Zeit zur Verfügung, um die beiden oben genannten Zyklen getrennt auszuführen. In der Praxis wird also eine Mischung dieser beiden Zyklen angewendet.#3) Funktionsprüfung : In diesem Anwendungstestzyklus wird der ordnungsgemäße und vollständige Test der Anwendung durchgeführt. Der Hauptfokus dieser Aktivität liegt auf der Überprüfung, ob die Geschäftslogik der Anwendung wie erwartet funktioniert.
# 4) Regressionstests :: Dies ist der letzte Anwendungszyklus. Hier werden die Fehlerbehebungen und / oder Updates überprüft. Darüber hinaus stellen Regressionstests sicher, dass in anderen Bereichen der AUT keine Fehlfunktionen aufgrund von Korrekturen und Änderungen auftreten.
Fehler werden in jedem Testzyklus protokolliert. Es gibt keine eindeutige Grenze zwischen den Testzyklen. Beispielsweise wird bei der Regression die Funktionalität ebenfalls überprüft, und es kann auch erforderlich sein, dass zuerst Rauch, Vernunft oder deren Zusammenschluss erforderlich sind.
Wir haben oben über vier verschiedene Anwendungstestzyklen gesprochen. Wir müssen hier auch verstehen, dass jeder Anwendungstestzyklus bestimmte Schritte beinhaltet. Im Allgemeinen hat jeder Testzyklus die folgenden Schritte:
Anwendungstests - Empfohlene Vorgehensweise
Ich denke, Hunderte von Artikeln sind im Internet verfügbar. Jeder Artikel schlägt eine andere Anzahl von Best Practices vor, die von 7 bis 30 reichen (die ich bisher gesehen habe). Ich habe jedoch nur 5 Tipps für Leser.
- Planen Richtig
- Prüfung Scharf
- Protokollieren Sie die Fehler Deutlich
- Führen Sie den Regressionstest durch Effizient
- Verbessere die oben genannten vier Fähigkeiten Ständig
Darüber hinaus sollten Sie die Testfälle gut priorisieren und zuerst die Hauptgeschäftsabläufe abdecken.
Fazit
Das Testen von Anwendungen ist ein großes Thema und die Hauptaktivität für fast alle Softwaretester.
In diesem Artikel habe ich einen Überblick über die grundlegendsten und notwendigsten Bereiche gegeben, die unter Anwendungstests fallen. Es beinhaltet Strategien, Phänomene, Ansätze, Werkzeuge, Technologien und Richtlinien. Ich habe mich mit den konzeptionellen und praktischen Einsichten von Anwendungstests sowie den wichtigsten Problembereichen befasst.
Literatur-Empfehlungen
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Softwaretestkurs: An welchem Softwaretestinstitut soll ich teilnehmen?
- Wählen Sie Software-Tests als Ihre Karriere
- Was ist Affentest beim Softwaretest?
- Was ist Softwarekompatibilitätstest?
- Einige interessante Fragen zu Softwaretests
- Top 20 praktische Tipps zum Testen von Software, die Sie lesen sollten, bevor Sie eine Anwendung testen
- Arten von Softwaretests: Verschiedene Testtypen mit Details