Agenda 13:30-13.45 Begrüßung & Einführung in das Thema Wofür benötigt man Softwaretests? Welche Vorteile bringen Softwaretests mit sich? 13:45-14.30 Vom Produktmanager zum Tester Anforderungsaufnahme & Testdefinition Aufbau von Testszenarien Testplanverwaltung & Auswirkungsanalyse 14:30-15:15 Vom Entwickler zum Tester Fehlermeldung & Qualitätssicherung Kommunikation zwischen Entwickler und Tester 15.15-15.45 Kaffeepause 15.45-16.30 Der Tester lässt grüßen - Vom Tester zum Produktmanager und Entwickler Übergabe der Ergebnisse an Produktmanager und Entwickler 16.30-17:00 Meet the Experts - offene Diskussionsrunde mit den Referenten
Anforderungen & Testfälle Zürich, 23. April 2010 Anforderungen & Testfälle Vom Produktmanager zum Tester Neno Loje Technologieberater & MVP www.teamsystempro.ch Basiert auf Folien der Microsoft Corporation und dem AIT TeamSystemPro Team
Fundamentaler Testprozess Nach ISTQB-Standard: Planung und Steuerung Testanalyse Test-Design Testdurchführung Testauswertung und Berichte Testabschluss
Tester Segmentation Generalist Specialist 70% of testing happens here Manual Testing Some scripting Creates scripts to set up lab, create data Strong scripting skills Some coding skills Strong coding Develops fully automated testing procedures Expert coding skills 70% of testing happens here majority of test tools target here Black Box Testing White Box Testing API Testing Folie: Microsoft Corporation
Visual Studio 2010 Grafik: Microsoft Corporation
ALM-Rollen und Verantwortlichkeiten Business Analysts Requirements Management QoS Management Requirements Analysis Project Managers Project Planning Task Assignment Bug Tracking Architects Architecture Modeling Analysis and Design Design for Deployment Development Executives Portfolio Management Project Organization Stakeholder Communication Haben wir das Richtige programmiert? Haben wir es richtig programmiert? UI Designers UI Design UI Prototyping UI Flow Modeling Operations Customer Support Infrastructure Architecture Infrastructure Deployment DBAs Database Design Database Source Control Database Test Data Gen Testers Test Case Management Manual Testing Load Testing Automated Testing Developers Code Analysis Unit Testing Version Control Grafik: Microsoft Corporation
Testplanung Teststrategie Nachvollziehbarkeit Änderungen anforderungsbasiert risikoorientiert Nachvollziehbarkeit Änderungen
Teststrategie Ebenen definieren… … für Anforderungen … für Tests Granularität und Priorisierung von Testfällen Teststufen
Ebenen der Anforderungen Anforderungsdefinition Anforderungen Geschäfts- ziele Funktionaler Systementwurf Szenarien Funktionen & Daten UI Nichtfunktional Technischer Systementwurf Schnittstellen Komponentenentwurf
Demo: Requirement-Hierarchie
Ebenen der Tests Anforderungs-definition Abnahmetests Funktionaler Systementwurf Systemtest Analyse Design Build Verification System Test Technischer Systementwurf Integrationstest Komponenten-spezifikation Komponenten-test Programmierung Design Implementierung
Teststufen Systemtest Integrationstest Komponenten-test Freigabe [Dev] Build [Main] Merge und Build [QA] Merge und Build Freigabe Komponenten-test Eingangstests (100% automat.) Weitere Tests (nach Bedarf) Freigabetests (tw. manuell) ausgeführter Testfälle Anzahl
Demo: Testplanung
Testschritte in eigenem Control Parameter für Testschritte Werte für parametrisierte Testschritte
Testlisten für die codierten Tests (Unit Tests etc.) Integrationstests sind mit funktionalen Requirements verknüpft
Testpläne für System- und Akzeptanztests Nach Produkt-versionen Je Testplan kann nach Build-Definition gefiltert werden
Testplan ist in Test-Suiten untergliedert Alle Test Cases der System Tests von Version 1.0
Testpriorisierung Product Build 1 Product Build 2 System Test Run 1 Automation Test Case Instruments Automation Test Case Impacted Tests Automation Test Case Instruments Automation Test Case
Zusammenfassung Planung des Anforderungs- und Testansatzes Durchgängige Traceability durch Modelle Handhabbare Granularität durch Teststufen Unterstützung der Architekten- und der Testerrolle durch Integration in VS und MTM Automatisierung durch Tools und Code
Agenda 13:30-13.45 Begrüßung & Einführung in das Thema Wofür benötigt man Softwaretests? Welche Vorteile bringen Softwaretests mit sich? 13:45-14.30 Vom Produktmanager zum Tester Anforderungsaufnahme & Testdefinition Aufbau von Testszenarien Testplanverwaltung & Auswirkungsanalyse 14:30-15:15 Vom Entwickler zum Tester Fehlermeldung & Qualitätssicherung Kommunikation zwischen Entwickler und Tester 15.15-15.45 Kaffeepause 15.45-16.30 Der Tester lässt grüßen - Vom Tester zum Produktmanager und Entwickler Übergabe der Ergebnisse an Produktmanager und Entwickler 16.30-17:00 Meet the Experts - offene Diskussionsrunde mit den Referenten