Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Softwareentwicklung & Testprozess

Ähnliche Präsentationen


Präsentation zum Thema: "Softwareentwicklung & Testprozess"—  Präsentation transkript:

1 Softwareentwicklung & Testprozess
Schwerpunkt Testprozess Anne Katrin Salig

2 Agenda Testphasen und –ergebnisse Automatisierung von Tests
Fehlermanagement Zusammenfassung

3 Testphasen und -ergebnisse
5 Phasen / min. 1 Ergebnis Testinitialisierung  wesentliche Ziele, Testobjekte, Ergebnisse, Aktivitäten Testplanung  Zusammenstellung der Testszenarien, Testmethoden und Testumgebung Testdurchführung  Ausführung der Testfälle Testauswertung  Auswertung des Testergebnisses  Rücksprung auf Testdurchführung bei fehlerhaftem Testergebnisse Testabschluss  Dokumentation der durchgeführten Testaktivitäten und des Ergebnisses Vgl. Steinweg, Carl: Management der Softwareentwicklung, S. 340

4 Automatisierung von Tests
Regressionstests Prüft nach Systemveränderungen auf neue Defekte im Quellcode Vorteile Hohe Effizienz Zustand des Softwaresystems = Grundlage für weitere Planungen Durchführung  bestehende Version des Systems verändert wurde Sicherstellung, dass nach der Weiterentwicklung oder Fehlerkorrektur im Quellcode keine neuen Defekte/Fehler entstanden sind Effizienz  Rolle des Testers = Entwickler (Zeitersparnis) Planung  weitere Informationen aus Testergebnissen und Fehlerberichten für Projektplanung (Projektfortschritt)

5 Automatisierung von Tests
Ergebnisarten des Regressionstests Erfolg (Success) Fehler (Error) Fehlschlag (Failure) Test ist erfolgreich, wenn Ist- und Sollergebnisse übereinstimmten Abweichungen müssen weiter ausgewertet werden Erfolg  Ist- und Soll stimmen überein  Testfall = erledigt Fehler  Testlauf vollständig durchgeführt  aber Ist & Soll stimmen nicht überein (z.B. abweichende Werte) Fehlschlag  Testlauf nicht durchgeführt, z.B. Programmabsturz

6 Automatisierung von Tests
Oberflächentests Funktionale Eigenschaften der GUI Nicht: Intuitive Benutzerführung Einhaltung von Style-Guides Rahmenbedingungen Eingabemöglichkeiten Ablaufgeschwindigkeit Benutzerschnittstelle Signifikante Änderungen der GUI Funktionale und temporale Eigenschaften der GUI werden getestet Führt Button gewünschte Funktionen aus / Werte aus Eingabefeldern ziehen Vorteil  Ansteuerung der Applikation durch die Testumgebung wie durch einen realen Benutzer Geprägt durch Rahmenbedingungen: Auswahl von Menge an Eingabemöglichkeiten und Optionen auf der GUI Keine beliebige Beschleunigung des Ablaufs Zahlreiche Interaktionen mit der Benutzerschnittstelle Anpassung der Oberflächentests nach GUI-Änderungen

7 Automatisierung von Tests
Capture-Replay-Tests Testroboter für die GUI Aufzeichnung manuell getätigter Bedienschritte Prinzip des Videorekorders Gliederung in folgende Phasen: Capture – Program – Replay Aufzeichnung der während einer Testsitzung manuell durchgeführten Bedienschritte

8 Automatisierung von Tests
Capture Bedienung der Anwendung mit zeitgleicher Protokollierung von Tastatur- und Mauseingaben (x,y)-Koordinate  primitive Systeme Referenz des identifizierten GUI-Objektes  GUI-Änderungen leichter handhabbar Program Erzeugung skriptähnlichen Ablaufplans  Reproduktion der getätigten Eingaben Erweiterung um Checkpoints zum Vergleich von Soll & Ist Replay Reproduktion der generierten Skript-Datei An Checkpoint gelangte Aktion wird auf Fehler überprüft Vgl. Hoffmann, Dirk: Software-Qualität, S. 475

9 Fehlermanagement Techniken und Methoden, die einen strukturierten Umgang mit Software-Anomalien innerhalb des Entwicklungs- prozesses gewährleisten Software-Anomalien = Auffälligkeiten, die als möglicher Softwarefehler interpretiert werden können Ablage der Anomalien in einer Fehlerdatenbank Bug-Tracking-System

10 Fehlermanagement Aufbau mit allen Zugriffsgruppen
Tester  stellte Fehler ein Entwickler  behebt festgestellte Fehler Management  Infos über Projektforschritt Optional: Kunde  Einstellen von Fehlern / Einsehen Bearbeitungsstatus Vgl. Hoffmann, Dirk: Software-Qualität, S. 478

11 Fehlermanagement Merkmale der Bug-Tracking-Systeme
Identifikationsmerkmale Ident-Nr., Name & Version des Testobjekts, … Klassifikationsmerkmale Priorität, Schwere der Anomalie, … Beschreibungsmerkmale Genaue Fehlerbeschreibung, zusätzliche Dateien, … Identifikationsmerkmale  Hard-/Softwareumgebung Klassifikationsmerkmale  Aktueller Bearbeitungszustand Probleme  Merkmale Schwere d. Anomalie/Priorität: Häufig eine Gleichsetzung der Merkmale Ineffizienz bei Auswahl 5+ Kategorien für Priorität  max. drei bis vier Kategorien

12 Fehlermanagement Bugzilla
Freeware, die in vielen Open-Source-Projekten Anwendung findet Beispiele für Bearbeitungsstatus von Fehlern Unconfirmed New Assigned Resolved Verified Closed Bearbeitungsstatus = Klassifikationsmerkmal Unconfirmed  initial, neu eingestellte Anomalie (Fehler?) New  Fehler bestätigt Assigned  Zuweisung an Entwickler (Korrektur) Resolved  Anslyse erfolgt / Fehlerbeschreibung in DB eingepflegt Verified  Korrektur wurde überprüft und akzeptiert / Fehlerbericht vorbereitet Closed  Fehlerbericht wurde geschlossen / Dokumentation durch Speicherung zur Nachverfolgung

13 Fehlermanagement Crash Reports
Schwerwiegendes Verhalten im produktiven Betrieb Bearbeitung mit höherer Priorität Berichtserstellung durch Kunden Manuell über Fehlerdatenbank Automatisch durch Software nach Bestätigung durch Nutzer Bsp. Windows Error Reporting Meldung der kundenseitigen Anomalien über manuelle o. automatische Berichtserstellung Manuell  Zugriff auf Fehler-DB des Herstellers / Zugriff mit Rechteeinschränkungen Autom  Integriert in SW / durch Bestätigung wird Fehler an Hersteller gesendet

14 Zusammenfassung Organisation des Testprozess unabdingbar
Strukturierter Ablauf während der Testdurchläufe muss gegeben sein Automatisierung von Regressions- und Oberflächentests fördern die Effizienz Jedoch hoher Aufwand in der Vorbereitung Fehlerbehebung durch Fehlerdatenbank unterstützen die Kommunikation bzgl. Bearbeitungsstatus

15 Literatur & Quellen Hoffmann, Dirk W.: Software-Qualität, Heidelberg 2008. Benutzerhandbuch HP Quality Center, Hewlett-Packard Development Company, Palo Alto 2009. Steinweg, Carl: Management der Softwareentwicklung, 6. Auflage, Wiesbaden 2005. Spillner, Andreas: Basiswissen Softwaretest – Aus- und Weiterbildung zum Certified Tester, 4. Auflage, Heidelberg Pezzé, Mauro et al.: Software testen und analysieren – Prozesse, Prinzipien und Techniken, München 2009.

16 Vielen Dank!


Herunterladen ppt "Softwareentwicklung & Testprozess"

Ähnliche Präsentationen


Google-Anzeigen