Was ist statisches Testen?
Statisches Testen ist eine Softwaretesttechnik, mit der Fehler in der Softwareanwendung überprüft werden, ohne den Code auszuführen. Statische Tests werden durchgeführt, um Fehler in einem frühen Stadium der Entwicklung zu vermeiden, da es einfacher ist, die Fehler zu identifizieren und die Fehler zu beheben. Es hilft auch beim Auffinden von Fehlern, die von Dynamic Testing möglicherweise nicht gefunden werden.
Das Gegenstück ist Dynamic Testing, das eine Anwendung überprüft, wenn der Code ausgeführt wird. In diesem Tutorial finden Sie einen detaillierten Unterschied zwischen statischen und dynamischen Tests.
Die zwei Haupttypen statischer Testtechniken sind
- Manuelle Untersuchungen : Manuelle Untersuchungen umfassen die Analyse von manuell durchgeführtem Code, auch als REVIEWS bezeichnet.
- Automatisierte Analyse mit Werkzeugen: Automatisierte Analyse ist im Grunde eine statische Analyse, die mit Werkzeugen durchgeführt wird.
In diesem Tutorial lernen Sie:
- Was ist statisches Testen?
- Was ist Testing Review?
- Warum statische Tests?
- Was wird beim statischen Testen getestet?
- Wie statische Tests durchgeführt werden
- Statische Testtechniken
- Werkzeuge für statische Tests
- Tipps für einen erfolgreichen statischen Testprozess
Was ist Testing Review?
Eine Überprüfung in einem statischen Test ist ein Prozess oder eine Besprechung, die durchgeführt wird, um mögliche Fehler bei der Gestaltung eines Programms zu ermitteln. Eine weitere Bedeutung der Überprüfung besteht darin, dass alle Teammitglieder den Fortschritt des Projekts kennenlernen und manchmal die Vielfalt der Gedanken zu hervorragenden Vorschlägen führen kann. Dokumente werden direkt von Personen geprüft und Unstimmigkeiten werden behoben.
Bewertungen können weiter in vier Teile unterteilt werden:
- Informelle Bewertungen
- Komplettlösungen
- Technische Überprüfung
- Inspektionen
Während des Überprüfungsprozesses sind vier Arten von Teilnehmern, die an Tests teilnehmen:
- Moderator : Führt eine Eingangsprüfung durch, verfolgt Nacharbeiten, coacht das Teammitglied und plant das Meeting.
- Autor : Übernimmt die Verantwortung für die Behebung des gefundenen Fehlers und verbessert die Qualität des Dokuments
- Schreiber : Er protokolliert den Fehler während einer Überprüfung und nimmt an der Überprüfungsbesprechung teil
- Prüfer : Material auf Mängel prüfen und prüfen
- Manager : Entscheiden Sie sich für die Durchführung von Überprüfungen und stellen Sie sicher, dass die Ziele des Überprüfungsprozesses erreicht werden.
Arten von Fehlern, die bei statischen Tests leichter zu finden sind, sind:
- Abweichungen von Normen
- Nicht wartbarer Code
- Konstruktionsfehler
- Fehlende Anforderungen
- Inkonsistente Schnittstellenspezifikationen
Normalerweise ist der beim statischen Testen entdeckte Fehler auf Sicherheitslücken, nicht deklarierte Variablen, Grenzverletzungen, Syntaxverletzungen, inkonsistente Schnittstellen usw. zurückzuführen.
Warum statische Tests?
Statische Tests werden aus folgenden Gründen durchgeführt
- Früherkennung und Korrektur von Fehlern
- Reduzierte Entwicklungszeiten
- Reduzierte Testkosten und -zeit
- Zur Verbesserung der Entwicklungsproduktivität
- Um zu einem späteren Zeitpunkt des Testens weniger Fehler zu bekommen
Was wird beim statischen Testen getestet?
Beim statischen Testen werden folgende Dinge getestet
- Unit Test Cases
- Business Requirements Document (BRD)
- Anwendungsfälle
- System- / Funktionsanforderungen
- Prototyp
- Prototyp-Spezifikationsdokument
- DB Fields Dictionary-Tabelle
- Testdaten
- Dokument zur Rückverfolgbarkeitsmatrix
- Benutzerhandbuch / Schulungshandbücher / Dokumentation
- Testplan-Strategiedokument / Testfälle
- Automatisierungs- / Leistungstestskripte
Wie statische Tests durchgeführt werden
Um statische Tests durchzuführen, gehen Sie wie folgt vor:
- Führen Sie den Inspektionsprozess durch, um das Design der Anwendung vollständig zu inspizieren
- Verwenden Sie für jedes zu überprüfende Dokument eine Checkliste, um sicherzustellen, dass alle Überprüfungen vollständig abgedeckt sind
Die verschiedenen Aktivitäten zur Durchführung statischer Tests sind:
- Validierung der Anforderungen für Anwendungsfälle: Überprüft, ob alle Endbenutzeraktionen sowie alle damit verbundenen Ein- und Ausgaben identifiziert wurden. Je detaillierter und gründlicher die Anwendungsfälle sind, desto genauer und umfassender können die Testfälle sein.
- Validierung der funktionalen Anforderungen : Sie stellt sicher, dass die funktionalen Anforderungen alle erforderlichen Elemente identifizieren. Außerdem werden die Datenbankfunktionalität, die Schnittstellenlisten sowie die Hardware-, Software- und Netzwerkanforderungen untersucht.
- Überprüfung der Architektur : Alle Prozesse auf Unternehmensebene wie Serverstandorte, Netzwerkdiagramme, Protokolldefinitionen, Lastausgleich, Datenbankzugriff, Testgeräte usw.
- Prototyp- / Screen-Mockup-Validierung : Diese Phase umfasst die Validierung von Anforderungen und Anwendungsfällen.
- Feldwörterbuchvalidierung : Jedes Feld in der Benutzeroberfläche ist gut genug definiert, um Testfälle zur Validierung auf Feldebene zu erstellen. Die Felder werden auf Min / Max-Länge, Listenwerte, Fehlermeldungen usw. überprüft.
Statische Testtechniken
- Informelle Bewertungen
- Komplettlösungen
- Technische Bewertungen
- Inspektionen
- Statische Analyse
- Datenfluss
- Kontrollfluss
Werkzeuge für statische Tests
Verschiedene Werkzeuge, die für statische Tests verwendet werden, sind wie folgt:
- Checkstyle
- Ruß
- SourceMeter
Tipps für einen erfolgreichen statischen Testprozess
Einige nützliche Tipps zum Durchführen eines statischen Testprozesses in Software Engineering.
- Konzentrieren Sie sich nur auf Dinge, die wirklich zählen
- Planen und verfolgen Sie Überprüfungsaktivitäten explizit. Eine Software-Anleitung und -Inspektion werden im Allgemeinen in Peer-Reviews zusammengefasst
- Trainiere Teilnehmer mit Beispielen
- Lösen Sie Probleme mit Personen
- Halten Sie den Prozess als Projektkultur formal
- Kontinuierliche Verbesserung - Prozess und Werkzeuge
- Durch das Entfernen der Hauptverzögerungen bei der Testausführung können Testkosten und -zeit reduziert werden
Zusammenfassung:
- Bei statischen Tests sollen Fehler so früh wie möglich festgestellt werden.
- Statische Tests sind kein Ersatz für dynamische Tests. Beide stellen unterschiedliche Arten von Fehlern fest
- Bewertungen sind eine effektive Technik für statische Tests
- Überprüfungen helfen nicht nur, Fehler zu finden, sondern verstehen auch fehlende Anforderungen, Konstruktionsfehler und nicht wartbaren Code.