SlideShare ist ein Scribd-Unternehmen logo
Motivation und Überblick


          iks-Thementag : „Wer testet, ist feige“


                        24.06.2009



                           Autor:
                 Christoph Schmidt-Casdorff
                      Carsten Schädel




Seite 2
Agenda

      Einführung

      Auf welcher Ebene wird getestet – testing level

      Was wird getestet– testing categories

      Wie wird getestet – testing methods and tools

      Alles zusammen – test execution




Seite 3
Fehler in Software

          Mythos: Software ist fehlerfrei
           – ist nicht nachweisbar
           – Testen findet Fehler, weist nicht deren Abwesenheit nach

          Mythos: Qualität meint a priori für Jeden dasselbe
           – es gibt unterschiedliche Dimensionen
               • Funktionalität, Performance, …
           – Qualität muss festgelegt werden
           – Qualität ist keine Eigenschaft, sondern eine Metrik

          Mythos: Qualität ‚geschieht‘ von selbst
           – das Ziel ‚Qualität‘ muss Bestandteil des Entwicklungsprozess sein

Seite 4
Fehler in Software

          Je später ein Fehler entdeckt wird, desto teurer wird dessen
          Behebung




  Quelle: [McConnell2004]



          63 % der Fehler stammen aus Analyse/Design [Perry2000]
           – viele Fehler sind früh zu erkennen


Seite 5
Fehler in Software: Quintessenz

          Es muss getestet werden


          … so früh wie möglich


          Qualitätskriterien müssen festgelegt werden


          Qualität ist Bestandteil des Entwicklungsprozesses




Seite 6
Wo sind wir

          Einführung

          Auf welcher Ebene wird getestet – testing level

          Was wird getestet– testing categories

          Wie wird getestet – testing methods and tools

          Alles zusammen – test execution




Seite 7
Testebene

          Granularität des zu testenden Systems
          – (target-of-test)

          in Reihenfolge in abnehmender Granularität
          – Unit testing
          – Integration testing
          – System testing
          – Acceptance testing




Seite 8
[http://www.information-management.com/news/1026146-1.html]
Seite 9
Unit / Component testing
     Unit ist die kleinste zu testende Softwareeinheit
           – kann kompiliert, gelinkt, geladen werden …
           – Klassen, Interfaces, Prozeduren, ….


     wird durch Entwicklung erstellt
           – buddy testing
               • Testen und Entwicklung durch verschiedene Personen




Seite 10
Integrationstest I

       fasst Units und Module zu sinnvollen Testgruppen zusammen
           – setzt sich aus unterschiedlichen Quellen zusammen
               • Libraries, Subsysteme, Module, …


       testet Kollaboration

       Integrationstests verdichten schrittweise
           – bis das Gesamtsystem abgedeckt ist




Seite 11
Integrationstest II

       wird durch Entwicklung durchgeführt
           – Buddy testing


       Testmethoden vergleichbar zu Unit testing




Seite 12
Systemtest I

       testet vollständiges System
           – vollständige Kollaboration aller Komponenten
           – Integration mit externen Systemen


       beinhaltet nicht-funktionale Tests
           – Performance, Last, …..




Seite 13
Systemtest II

       verifiziert Umsetzung
           – Abgleich mit Designspezifikation

       wird durch Testteam durchgeführt

       wird auf spezieller Umgebung durchgeführt




Seite 14
Abnahmetest I
       …. auch als Acceptancetest bezeichnet
       testet, ob das System die Anforderungen erfüllt,
           – aus Sicht des Kunden / Auftraggebers
           – entscheidender Teil der Abnahme

       umfasst i.d.R. nicht-funktionale Tests
           – Performance, Last , ….

           umfasst das Gesamtprodukt
           – inkl. Dokumentation, …




Seite 15
Abnahmetest II

       wird durch Kunde / Auftraggeber durchgeführt

       wird in produktionsnaher/-identischer Umgebung ausgeführt




Seite 16
Regressionstest

       testet, ob eine Fehlerbehebung unerwartete Auswirkungen hat

       ist ein andauernder Prozess
           – über den gesamten Testlebenszyklus
           – umfasst alle Testebenen


       wird bei jeder Programmänderung durchgeführt




Seite 17
Smoke Test I

       ist ein Gesundheitscheck des System
           – angestoßen i.d.R. durch den Bau des Systems (system build)
           – Synonym: build verification test


       ist Verfahren während der Entwicklung
           – evtl. Fehler werden sofort behoben


       ist ein Typ eines Regressionstests




Seite 18
Smoke Test II

       beinhaltet oft eine aussagekräftige Teilmenge aller Tests
           – alle Tests sprengen das mögliche Zeitfenster


       gängige Verfahren sind
           – daily build
           – build on check-in




Seite 19
Continuous Integration

       im Team wird Software häufig integriert
           – mindestens 1x täglich
           – jede Integration wird durch Build verifiziert


       bedarf Werkzeugunterstützung

       ist Entwicklungsverfahren

       Verfahren für Smoke Test bei build on check-in




Seite 20
Wo sind wir

       Einführung

       Auf welcher Ebene wird getestet – testing level

       Was wird getestet– testing categories

       Wie wird getestet – testing methods and tools

       Alles zusammen – test execution




Seite 21
Dimensionen der Qualität

       Funktionalität (functionality)

       Benutzungsfreundlichkeit (usability)

       Zuverlässigkeit (reliability)

       Performance

       Pflegbarkeit (supportability / maintainability )




Seite 22
Tests für Funktionalität

       Fachliche Korrektheit

       Sicherheit

       Anforderungen an Mengengerüste




Seite 23
Tests für Benutzungsfreundlichkeit

       Interaktion „Mensch-System“

       Ästhetische Aspekte

       Ergonomische Aspekte

       Online- und context-sensitive Hilfe

       Benutzerdokumentation




Seite 24
Tests für Zuverlässigkeit

       Integritätstest
           – Kompatibilität


       Strukturtest auf
           – Quellcode
           – Webseiten


       Robustheitstest
           – Wiederanlauffähigkeit




Seite 25
Tests für Performance
       Benchmarking

       Test auf konkurrierender Nutzung
           – Anzahl der Nutzer


       Lasttests

       Stresstest
           – Verhalten des Systems unter Extrembedingungen




Seite 26
Tests für Pflegbarkeit

       Konfigurationstest
           – Unterstützung unterschiedlicher Laufzeitumgebungen


       Installationstest




Seite 27
Wo sind wir

       Einführung

       Auf welcher Ebene wird getestet – testing level

       Was wird getestet– testing categories

       Wie wird getestet – testing methods and tools

       Alles zusammen – test execution




Seite 28
Testmethoden
       White Box Testing
           – Interne Strukturen des Testziels sind gläsern
           – Tests nutzen interne Strukturen
           – Unittesting, Codeanalyse, Codeabdeckung, …

       Black Box Testing
           – Interne Strukturen des Testziels sind verborgen
           – Anforderungs- und Funktionalitätstests

       Gray Box Testing
           – wie Black Box Testing, nutzt aber innere Kenntnisse
             z.B. über Datenbankstrukturen
Seite 29
Testwerkzeuge I
       lassen Test erstellen

       sind Spezialisten für
           – einen Testtyp (oft noch spezialisierter)
           – eine Technologie

       lassen sich nach Testmethoden klassifizieren




Seite 30
Testwerkzeuge II

       Beispiele
           – JUnit für funktionale Unit- /Integrationstests
           – Capture & Replay für Webanwendungen
           – Grinder, HttpUnit für Web-Lasttests


       OpenSource Testing Tools
           – http://java-source.net/open-source/testing-tools




Seite 31
Wo sind wir

       Einführung

       Auf welcher Ebene wird getestet – testing level

       Was wird getestet– testing categories

       Wie wird getestet – testing methods and tools

       Alles zusammen – test execution




Seite 32
Testausführung I

       bedarf einer Ausführungsumgebung
           – ist werkzeuggestützt


       umfasst
           – SCM und Build
           – Aufbau einer Testumgebung (optional)
           – Deployment des Systems (optional)
           – Deployment der Tests (optional)
           – Ausführung des Tests
           – Test Defect Management


Seite 33
Test Defect Management

       Test Defects müssen systematisch behandelt werden
           – Defects als Ausgang eines Tests

       Test Defect Management
           – beinhaltet Reporting
           – unterstützt Fehlerbehebung
               • stellt einen Workflow bereit

           – liefert Testmetriken
               • Codeabdeckung
               • Maße für Defects
               • Reifegrad der Software


Seite 34
Testaktivitäten I
       Begleitung der requirement analyse
           – Welche Aspekte / use cases des Systems sind testbar ?
           – Welche Szenarien sind denkbar ?
           – Rolle test engineer

       Begleitung der Systemarchitektur
           – Wie sieht eine Testumgebung aus?
           – Welche Systemaspekte sind zu testen (Performance, Durchsatz, …) ?
           – Rolle test engineer

       Test planning: Teststrategie und Testplan werden aufgestellt
           – Siehe IEEE 829
           – Rolle test engineer
Seite 35
Testaktivitäten II
       Test development: Entwicklung der Tests
           – test procedures, test scenarios, test cases, test data, test scripts
           – Rolle Entwickler (Unittest/Integrationstest) oder test engineer

       Ausführung der Tests

       Test reporting: Auswertung der Testergebnisse

       Defect Analysis

       Retesting der behobenen Fehler

       Regression testing


Seite 36
Zusammenfassung

       ein Test hat 3 Dimensionen
           – Testebene
               • In welcher Granularität wird getestet?


           – Testkategorie
               • Welche Qualitätseigenschaft wird getestet?


           – Testmethode
               • Welche Technologie wird mit welchem Werkzeug getestet?


       Ausführungsumgebung- und -planung
           – sorgt für die Ausführung und Ergebnisverwaltung der Tests


Seite 37
Ziel des Thementages

Sie erfahren heute, wie …

     eine Testumgebung zur Ausführung von Tests aufgebaut
     ist / sein kann
           – Werkzeuge

     wie ein unterstützender Prozess aufgebaut ist / sein kann, der
           – die Ausführung von Tests integriert
           – die Ausführung von Tests automatisiert
           – das Reporting von Testausführung integriert

     ein solcher Prozess aus Sicht der Projektleitung eingeführt wird

Seite 38
Referenzen

[Perry2000]
   William E. Perry, Effective Methods for Software Testing, 2nd Edition,
   John Wiley & Sons, Inc., New York, NY, 2000, ISBN 0-471-35418-X

[McConnell2004]
   McConnell, Steve (2004). Code Complete (2nd ed.). Microsoft Press.
   pp. 960. ISBN 0-7356-1967-0.




Seite 39
Links

http://rup.hops-fp6.org/process/workflow/test/co_tytst.htm

http://www.softwaretestingwiki.com/doku.php

http://www.nickjenkins.net/prose/testingPrimer.pdf

http://martinfowler.com/articles/continuousIntegration.html




Seite 40
www.iks-gmbh.com




Seite 41
Anhang




Seite 42
Integrationtesting III

       Bottom Up Integrationstesting
           – Low-Level Komponenten zuerst
           – Einsatz von Treibern, die die Integration auf höherer
             Ebene simulieren
           – Setzt entsprechende Designstrategie voraus




Seite 43
Integrationtesting III

       Top Down Integrationstest
           – High-Level Komponenten zuerst
           – Benötigte Komponenten werden simuliert
           – Simulation mittels Stubbing/Mocking
           – Setzt entsprechende Designstrategie voraus




Seite 44
Intergrationstesting IV

       Mixed-testing
           – Button up
              • Infrastruktur Komponenten
           – Top down
              • ansonsten




Seite 45
Best practices

       Test Early, Test Often

       Regression vs. Retesting

       White-Box vs Black-Box testing

       Verification and Validation




Seite 46
Seite 47

Weitere ähnliche Inhalte

Was ist angesagt?

Operating Systems - Process Synchronization and Deadlocks
Operating Systems - Process Synchronization and DeadlocksOperating Systems - Process Synchronization and Deadlocks
Operating Systems - Process Synchronization and Deadlocks
Mukesh Chinta
 
Aca2 01 new
Aca2 01 newAca2 01 new
Aca2 01 new
Sumit Mittu
 
Software testing
Software testingSoftware testing
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
Abhinav Shukla
 
Combining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch PredictorsCombining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch Predictors
Naishil Shah
 
Iterative model
Iterative modelIterative model
Iterative model
Vaibhav Dash
 
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
Strongstep - Innovation in software quality
 
Main Memory
Main MemoryMain Memory
Main Memory
Jenny Galino
 
Integration testing
Integration testingIntegration testing
Integration testing
Vaibhav Dash
 
Unit Testing vs Integration Testing
Unit Testing vs Integration TestingUnit Testing vs Integration Testing
Unit Testing vs Integration Testing
Rock Interview
 
Software testing
Software testingSoftware testing
Software testing
Bhagyashree pathak
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
Prachi Sasankar
 
Automation testing & Unit testing
Automation testing & Unit testingAutomation testing & Unit testing
Automation testing & Unit testing
Kapil Rajpurohit
 
Chapter 2 program-security
Chapter 2 program-securityChapter 2 program-security
Chapter 2 program-security
Vamsee Krishna Kiran
 
Memory Hierarchy
Memory HierarchyMemory Hierarchy
Memory Hierarchy
Trinity Dwarka
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
AbdulImrankhan7
 
Build using jenkins on rtc repository
Build using jenkins on rtc repositoryBuild using jenkins on rtc repository
Build using jenkins on rtc repository
Ankit Vashistha
 
UNIT II STATIC UML DIAGRAMS.pptx
UNIT II STATIC UML DIAGRAMS.pptxUNIT II STATIC UML DIAGRAMS.pptx
UNIT II STATIC UML DIAGRAMS.pptx
anguraju1
 
Secure boot general
Secure boot generalSecure boot general
Secure boot general
Prabhu Swamy
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
Ra'Fat Al-Msie'deen
 

Was ist angesagt? (20)

Operating Systems - Process Synchronization and Deadlocks
Operating Systems - Process Synchronization and DeadlocksOperating Systems - Process Synchronization and Deadlocks
Operating Systems - Process Synchronization and Deadlocks
 
Aca2 01 new
Aca2 01 newAca2 01 new
Aca2 01 new
 
Software testing
Software testingSoftware testing
Software testing
 
SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING SDLC ITS MODEL AND SOFTWARE TESTING
SDLC ITS MODEL AND SOFTWARE TESTING
 
Combining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch PredictorsCombining TAGE-SC-L and GShare Branch Predictors
Combining TAGE-SC-L and GShare Branch Predictors
 
Iterative model
Iterative modelIterative model
Iterative model
 
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
[StepTalks2011] Team Software Process (TSP): High Performance Individuals, Hi...
 
Main Memory
Main MemoryMain Memory
Main Memory
 
Integration testing
Integration testingIntegration testing
Integration testing
 
Unit Testing vs Integration Testing
Unit Testing vs Integration TestingUnit Testing vs Integration Testing
Unit Testing vs Integration Testing
 
Software testing
Software testingSoftware testing
Software testing
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Automation testing & Unit testing
Automation testing & Unit testingAutomation testing & Unit testing
Automation testing & Unit testing
 
Chapter 2 program-security
Chapter 2 program-securityChapter 2 program-security
Chapter 2 program-security
 
Memory Hierarchy
Memory HierarchyMemory Hierarchy
Memory Hierarchy
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
Build using jenkins on rtc repository
Build using jenkins on rtc repositoryBuild using jenkins on rtc repository
Build using jenkins on rtc repository
 
UNIT II STATIC UML DIAGRAMS.pptx
UNIT II STATIC UML DIAGRAMS.pptxUNIT II STATIC UML DIAGRAMS.pptx
UNIT II STATIC UML DIAGRAMS.pptx
 
Secure boot general
Secure boot generalSecure boot general
Secure boot general
 
Requirements validation - requirements engineering
Requirements validation - requirements engineeringRequirements validation - requirements engineering
Requirements validation - requirements engineering
 

Andere mochten auch

Adapting my business - Turismo - Segittur - Carlos Romero
Adapting my business - Turismo - Segittur - Carlos RomeroAdapting my business - Turismo - Segittur - Carlos Romero
Adapting my business - Turismo - Segittur - Carlos Romero
Factor CO2
 
Dispositivo intrauterino (diu)
Dispositivo intrauterino (diu)Dispositivo intrauterino (diu)
Dispositivo intrauterino (diu)
Lau2404
 
Mdc de la unidad curricular
Mdc  de la unidad curricularMdc  de la unidad curricular
Mdc de la unidad curricular
gladyscon
 
Base de datos
Base de datosBase de datos
Base de datos
krmensanchez
 
Rubio Huayamave
Rubio HuayamaveRubio Huayamave
Rubio Huayamave
Gabriela Rubio
 
Antenas
AntenasAntenas
Antenas
Luis Maza
 
Foro grupal coevaluación- unidad 3, diapositivas
Foro grupal  coevaluación- unidad 3, diapositivasForo grupal  coevaluación- unidad 3, diapositivas
Foro grupal coevaluación- unidad 3, diapositivas
Dajuvi
 
ARTERIAS-JULLIETH
ARTERIAS-JULLIETHARTERIAS-JULLIETH
ARTERIAS-JULLIETH
julieta-jupiter
 
El presupuesto
El presupuestoEl presupuesto
El presupuesto
UNIANDES
 
Trabajo final expresion oral
Trabajo final expresion oralTrabajo final expresion oral
Trabajo final expresion oral
yurymarcelarodriguez
 
Trabajo de informatica valentina
Trabajo de informatica valentinaTrabajo de informatica valentina
Trabajo de informatica valentina
valentinarios1999
 
Los mejores aviones helicópteros y otros aparatos voladores 2
Los mejores  aviones helicópteros y otros aparatos voladores 2Los mejores  aviones helicópteros y otros aparatos voladores 2
Los mejores aviones helicópteros y otros aparatos voladores 2
Farlydaniel
 
Arte prehistórico
Arte prehistóricoArte prehistórico
Arte prehistórico
Leonardo Alcaíno
 
Manual de instalar y utilizar file zilla
Manual de instalar y utilizar file zillaManual de instalar y utilizar file zilla
Manual de instalar y utilizar file zilla
DayliTovar
 
Tare1
Tare1Tare1
Análisis foda
Análisis fodaAnálisis foda
Operaciones en excel
Operaciones en excelOperaciones en excel
Operaciones en excel
Kevin Rios Barco
 
Eventkommunikation in Zeiten von Social Media
Eventkommunikation in Zeiten von Social MediaEventkommunikation in Zeiten von Social Media
Eventkommunikation in Zeiten von Social Media
guliverka
 

Andere mochten auch (20)

Cronograma
CronogramaCronograma
Cronograma
 
Adapting my business - Turismo - Segittur - Carlos Romero
Adapting my business - Turismo - Segittur - Carlos RomeroAdapting my business - Turismo - Segittur - Carlos Romero
Adapting my business - Turismo - Segittur - Carlos Romero
 
Dispositivo intrauterino (diu)
Dispositivo intrauterino (diu)Dispositivo intrauterino (diu)
Dispositivo intrauterino (diu)
 
Mdc de la unidad curricular
Mdc  de la unidad curricularMdc  de la unidad curricular
Mdc de la unidad curricular
 
Base de datos
Base de datosBase de datos
Base de datos
 
Rubio Huayamave
Rubio HuayamaveRubio Huayamave
Rubio Huayamave
 
Antenas
AntenasAntenas
Antenas
 
Foro grupal coevaluación- unidad 3, diapositivas
Foro grupal  coevaluación- unidad 3, diapositivasForo grupal  coevaluación- unidad 3, diapositivas
Foro grupal coevaluación- unidad 3, diapositivas
 
ARTERIAS-JULLIETH
ARTERIAS-JULLIETHARTERIAS-JULLIETH
ARTERIAS-JULLIETH
 
El presupuesto
El presupuestoEl presupuesto
El presupuesto
 
Trabajo final expresion oral
Trabajo final expresion oralTrabajo final expresion oral
Trabajo final expresion oral
 
Trabajo de informatica valentina
Trabajo de informatica valentinaTrabajo de informatica valentina
Trabajo de informatica valentina
 
Los mejores aviones helicópteros y otros aparatos voladores 2
Los mejores  aviones helicópteros y otros aparatos voladores 2Los mejores  aviones helicópteros y otros aparatos voladores 2
Los mejores aviones helicópteros y otros aparatos voladores 2
 
Arte prehistórico
Arte prehistóricoArte prehistórico
Arte prehistórico
 
Knowtech vortrag
Knowtech vortragKnowtech vortrag
Knowtech vortrag
 
Manual de instalar y utilizar file zilla
Manual de instalar y utilizar file zillaManual de instalar y utilizar file zilla
Manual de instalar y utilizar file zilla
 
Tare1
Tare1Tare1
Tare1
 
Análisis foda
Análisis fodaAnálisis foda
Análisis foda
 
Operaciones en excel
Operaciones en excelOperaciones en excel
Operaciones en excel
 
Eventkommunikation in Zeiten von Social Media
Eventkommunikation in Zeiten von Social MediaEventkommunikation in Zeiten von Social Media
Eventkommunikation in Zeiten von Social Media
 

Ähnlich wie Softwaretests: Motivation und Überblick

Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
Christian Baranowski
 
Agiles Testen - Überblick
Agiles Testen - ÜberblickAgiles Testen - Überblick
Agiles Testen - Überblick
Claudia Haußmann 🦋
 
Testen von Software (german)
Testen von Software (german)Testen von Software (german)
Testen von Software (german)
Markus Wichmann
 
Softwaretests: Werkzeuge zur Automatisierung
Softwaretests: Werkzeuge zur AutomatisierungSoftwaretests: Werkzeuge zur Automatisierung
Softwaretests: Werkzeuge zur Automatisierung
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Scrum Rocks, Testing Sucks ?! RELOADED
Scrum Rocks, Testing Sucks ?! RELOADEDScrum Rocks, Testing Sucks ?! RELOADED
Scrum Rocks, Testing Sucks ?! RELOADED
SwissQ Consulting AG
 
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Connected-Blog
 
Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013
Nico Orschel
 
Webanwendungen testen
Webanwendungen testenWebanwendungen testen
Webanwendungen testen
Boris Köster
 
Automatisiertes webauftritt testen
Automatisiertes webauftritt testenAutomatisiertes webauftritt testen
Automatisiertes webauftritt testen
mradamlacey
 
Was ist eigentlich eine Unit?
Was ist eigentlich eine Unit?Was ist eigentlich eine Unit?
Was ist eigentlich eine Unit?
Hendrik Lösch
 
Creasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft - Software QS Review
Creasoft - Software QS Review
Creasoft AG
 
Automatisierter Software-Test unter Java
Automatisierter Software-Test unter JavaAutomatisierter Software-Test unter Java
Automatisierter Software-Test unter Java
GFU Cyrus AG
 
Referat: Scrum Rocks – Testing Sucks?! (reloaded)
Referat: Scrum Rocks – Testing Sucks?! (reloaded)Referat: Scrum Rocks – Testing Sucks?! (reloaded)
Referat: Scrum Rocks – Testing Sucks?! (reloaded)
Digicomp Academy AG
 
Zukunftssicheres RPA: Testing-Methoden und Praxisbeispiele
Zukunftssicheres RPA: Testing-Methoden und PraxisbeispieleZukunftssicheres RPA: Testing-Methoden und Praxisbeispiele
Zukunftssicheres RPA: Testing-Methoden und Praxisbeispiele
UiPathCommunity
 
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Florian Wolters
 
Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014
WebcsonsultsEU
 
Creasoft - Software QS
Creasoft - Software QSCreasoft - Software QS
Creasoft - Software QS
Creasoft AG
 
Test-Alternativen
Test-AlternativenTest-Alternativen
Test-Alternativen
Sebastian Dietrich
 
Automatisierung von Security Test im Build-Prozess
Automatisierung von Security Test im Build-ProzessAutomatisierung von Security Test im Build-Prozess
Automatisierung von Security Test im Build-Prozess
x-celerate
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen
Gjero Krsteski
 

Ähnlich wie Softwaretests: Motivation und Überblick (20)

Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
 
Agiles Testen - Überblick
Agiles Testen - ÜberblickAgiles Testen - Überblick
Agiles Testen - Überblick
 
Testen von Software (german)
Testen von Software (german)Testen von Software (german)
Testen von Software (german)
 
Softwaretests: Werkzeuge zur Automatisierung
Softwaretests: Werkzeuge zur AutomatisierungSoftwaretests: Werkzeuge zur Automatisierung
Softwaretests: Werkzeuge zur Automatisierung
 
Scrum Rocks, Testing Sucks ?! RELOADED
Scrum Rocks, Testing Sucks ?! RELOADEDScrum Rocks, Testing Sucks ?! RELOADED
Scrum Rocks, Testing Sucks ?! RELOADED
 
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?Crowdsourced Mobile Testing – Alternative oder Ergänzung?
Crowdsourced Mobile Testing – Alternative oder Ergänzung?
 
Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013Testmanagement mit Visual Studio 2013
Testmanagement mit Visual Studio 2013
 
Webanwendungen testen
Webanwendungen testenWebanwendungen testen
Webanwendungen testen
 
Automatisiertes webauftritt testen
Automatisiertes webauftritt testenAutomatisiertes webauftritt testen
Automatisiertes webauftritt testen
 
Was ist eigentlich eine Unit?
Was ist eigentlich eine Unit?Was ist eigentlich eine Unit?
Was ist eigentlich eine Unit?
 
Creasoft - Software QS Review
Creasoft - Software QS ReviewCreasoft - Software QS Review
Creasoft - Software QS Review
 
Automatisierter Software-Test unter Java
Automatisierter Software-Test unter JavaAutomatisierter Software-Test unter Java
Automatisierter Software-Test unter Java
 
Referat: Scrum Rocks – Testing Sucks?! (reloaded)
Referat: Scrum Rocks – Testing Sucks?! (reloaded)Referat: Scrum Rocks – Testing Sucks?! (reloaded)
Referat: Scrum Rocks – Testing Sucks?! (reloaded)
 
Zukunftssicheres RPA: Testing-Methoden und Praxisbeispiele
Zukunftssicheres RPA: Testing-Methoden und PraxisbeispieleZukunftssicheres RPA: Testing-Methoden und Praxisbeispiele
Zukunftssicheres RPA: Testing-Methoden und Praxisbeispiele
 
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
 
Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014Der Agile Qualitätsbaukasten - PHP Unconference 2014
Der Agile Qualitätsbaukasten - PHP Unconference 2014
 
Creasoft - Software QS
Creasoft - Software QSCreasoft - Software QS
Creasoft - Software QS
 
Test-Alternativen
Test-AlternativenTest-Alternativen
Test-Alternativen
 
Automatisierung von Security Test im Build-Prozess
Automatisierung von Security Test im Build-ProzessAutomatisierung von Security Test im Build-Prozess
Automatisierung von Security Test im Build-Prozess
 
Software-Tests in PHP-Anwendungen
Software-Tests in PHP-AnwendungenSoftware-Tests in PHP-Anwendungen
Software-Tests in PHP-Anwendungen
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
IKS Gesellschaft für Informations- und Kommunikationssysteme mbH
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH (20)

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
 
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 

Softwaretests: Motivation und Überblick

  • 1. Motivation und Überblick iks-Thementag : „Wer testet, ist feige“ 24.06.2009 Autor: Christoph Schmidt-Casdorff Carsten Schädel Seite 2
  • 2. Agenda Einführung Auf welcher Ebene wird getestet – testing level Was wird getestet– testing categories Wie wird getestet – testing methods and tools Alles zusammen – test execution Seite 3
  • 3. Fehler in Software Mythos: Software ist fehlerfrei – ist nicht nachweisbar – Testen findet Fehler, weist nicht deren Abwesenheit nach Mythos: Qualität meint a priori für Jeden dasselbe – es gibt unterschiedliche Dimensionen • Funktionalität, Performance, … – Qualität muss festgelegt werden – Qualität ist keine Eigenschaft, sondern eine Metrik Mythos: Qualität ‚geschieht‘ von selbst – das Ziel ‚Qualität‘ muss Bestandteil des Entwicklungsprozess sein Seite 4
  • 4. Fehler in Software Je später ein Fehler entdeckt wird, desto teurer wird dessen Behebung Quelle: [McConnell2004] 63 % der Fehler stammen aus Analyse/Design [Perry2000] – viele Fehler sind früh zu erkennen Seite 5
  • 5. Fehler in Software: Quintessenz Es muss getestet werden … so früh wie möglich Qualitätskriterien müssen festgelegt werden Qualität ist Bestandteil des Entwicklungsprozesses Seite 6
  • 6. Wo sind wir Einführung Auf welcher Ebene wird getestet – testing level Was wird getestet– testing categories Wie wird getestet – testing methods and tools Alles zusammen – test execution Seite 7
  • 7. Testebene Granularität des zu testenden Systems – (target-of-test) in Reihenfolge in abnehmender Granularität – Unit testing – Integration testing – System testing – Acceptance testing Seite 8
  • 9. Unit / Component testing Unit ist die kleinste zu testende Softwareeinheit – kann kompiliert, gelinkt, geladen werden … – Klassen, Interfaces, Prozeduren, …. wird durch Entwicklung erstellt – buddy testing • Testen und Entwicklung durch verschiedene Personen Seite 10
  • 10. Integrationstest I fasst Units und Module zu sinnvollen Testgruppen zusammen – setzt sich aus unterschiedlichen Quellen zusammen • Libraries, Subsysteme, Module, … testet Kollaboration Integrationstests verdichten schrittweise – bis das Gesamtsystem abgedeckt ist Seite 11
  • 11. Integrationstest II wird durch Entwicklung durchgeführt – Buddy testing Testmethoden vergleichbar zu Unit testing Seite 12
  • 12. Systemtest I testet vollständiges System – vollständige Kollaboration aller Komponenten – Integration mit externen Systemen beinhaltet nicht-funktionale Tests – Performance, Last, ….. Seite 13
  • 13. Systemtest II verifiziert Umsetzung – Abgleich mit Designspezifikation wird durch Testteam durchgeführt wird auf spezieller Umgebung durchgeführt Seite 14
  • 14. Abnahmetest I …. auch als Acceptancetest bezeichnet testet, ob das System die Anforderungen erfüllt, – aus Sicht des Kunden / Auftraggebers – entscheidender Teil der Abnahme umfasst i.d.R. nicht-funktionale Tests – Performance, Last , …. umfasst das Gesamtprodukt – inkl. Dokumentation, … Seite 15
  • 15. Abnahmetest II wird durch Kunde / Auftraggeber durchgeführt wird in produktionsnaher/-identischer Umgebung ausgeführt Seite 16
  • 16. Regressionstest testet, ob eine Fehlerbehebung unerwartete Auswirkungen hat ist ein andauernder Prozess – über den gesamten Testlebenszyklus – umfasst alle Testebenen wird bei jeder Programmänderung durchgeführt Seite 17
  • 17. Smoke Test I ist ein Gesundheitscheck des System – angestoßen i.d.R. durch den Bau des Systems (system build) – Synonym: build verification test ist Verfahren während der Entwicklung – evtl. Fehler werden sofort behoben ist ein Typ eines Regressionstests Seite 18
  • 18. Smoke Test II beinhaltet oft eine aussagekräftige Teilmenge aller Tests – alle Tests sprengen das mögliche Zeitfenster gängige Verfahren sind – daily build – build on check-in Seite 19
  • 19. Continuous Integration im Team wird Software häufig integriert – mindestens 1x täglich – jede Integration wird durch Build verifiziert bedarf Werkzeugunterstützung ist Entwicklungsverfahren Verfahren für Smoke Test bei build on check-in Seite 20
  • 20. Wo sind wir Einführung Auf welcher Ebene wird getestet – testing level Was wird getestet– testing categories Wie wird getestet – testing methods and tools Alles zusammen – test execution Seite 21
  • 21. Dimensionen der Qualität Funktionalität (functionality) Benutzungsfreundlichkeit (usability) Zuverlässigkeit (reliability) Performance Pflegbarkeit (supportability / maintainability ) Seite 22
  • 22. Tests für Funktionalität Fachliche Korrektheit Sicherheit Anforderungen an Mengengerüste Seite 23
  • 23. Tests für Benutzungsfreundlichkeit Interaktion „Mensch-System“ Ästhetische Aspekte Ergonomische Aspekte Online- und context-sensitive Hilfe Benutzerdokumentation Seite 24
  • 24. Tests für Zuverlässigkeit Integritätstest – Kompatibilität Strukturtest auf – Quellcode – Webseiten Robustheitstest – Wiederanlauffähigkeit Seite 25
  • 25. Tests für Performance Benchmarking Test auf konkurrierender Nutzung – Anzahl der Nutzer Lasttests Stresstest – Verhalten des Systems unter Extrembedingungen Seite 26
  • 26. Tests für Pflegbarkeit Konfigurationstest – Unterstützung unterschiedlicher Laufzeitumgebungen Installationstest Seite 27
  • 27. Wo sind wir Einführung Auf welcher Ebene wird getestet – testing level Was wird getestet– testing categories Wie wird getestet – testing methods and tools Alles zusammen – test execution Seite 28
  • 28. Testmethoden White Box Testing – Interne Strukturen des Testziels sind gläsern – Tests nutzen interne Strukturen – Unittesting, Codeanalyse, Codeabdeckung, … Black Box Testing – Interne Strukturen des Testziels sind verborgen – Anforderungs- und Funktionalitätstests Gray Box Testing – wie Black Box Testing, nutzt aber innere Kenntnisse z.B. über Datenbankstrukturen Seite 29
  • 29. Testwerkzeuge I lassen Test erstellen sind Spezialisten für – einen Testtyp (oft noch spezialisierter) – eine Technologie lassen sich nach Testmethoden klassifizieren Seite 30
  • 30. Testwerkzeuge II Beispiele – JUnit für funktionale Unit- /Integrationstests – Capture & Replay für Webanwendungen – Grinder, HttpUnit für Web-Lasttests OpenSource Testing Tools – http://java-source.net/open-source/testing-tools Seite 31
  • 31. Wo sind wir Einführung Auf welcher Ebene wird getestet – testing level Was wird getestet– testing categories Wie wird getestet – testing methods and tools Alles zusammen – test execution Seite 32
  • 32. Testausführung I bedarf einer Ausführungsumgebung – ist werkzeuggestützt umfasst – SCM und Build – Aufbau einer Testumgebung (optional) – Deployment des Systems (optional) – Deployment der Tests (optional) – Ausführung des Tests – Test Defect Management Seite 33
  • 33. Test Defect Management Test Defects müssen systematisch behandelt werden – Defects als Ausgang eines Tests Test Defect Management – beinhaltet Reporting – unterstützt Fehlerbehebung • stellt einen Workflow bereit – liefert Testmetriken • Codeabdeckung • Maße für Defects • Reifegrad der Software Seite 34
  • 34. Testaktivitäten I Begleitung der requirement analyse – Welche Aspekte / use cases des Systems sind testbar ? – Welche Szenarien sind denkbar ? – Rolle test engineer Begleitung der Systemarchitektur – Wie sieht eine Testumgebung aus? – Welche Systemaspekte sind zu testen (Performance, Durchsatz, …) ? – Rolle test engineer Test planning: Teststrategie und Testplan werden aufgestellt – Siehe IEEE 829 – Rolle test engineer Seite 35
  • 35. Testaktivitäten II Test development: Entwicklung der Tests – test procedures, test scenarios, test cases, test data, test scripts – Rolle Entwickler (Unittest/Integrationstest) oder test engineer Ausführung der Tests Test reporting: Auswertung der Testergebnisse Defect Analysis Retesting der behobenen Fehler Regression testing Seite 36
  • 36. Zusammenfassung ein Test hat 3 Dimensionen – Testebene • In welcher Granularität wird getestet? – Testkategorie • Welche Qualitätseigenschaft wird getestet? – Testmethode • Welche Technologie wird mit welchem Werkzeug getestet? Ausführungsumgebung- und -planung – sorgt für die Ausführung und Ergebnisverwaltung der Tests Seite 37
  • 37. Ziel des Thementages Sie erfahren heute, wie … eine Testumgebung zur Ausführung von Tests aufgebaut ist / sein kann – Werkzeuge wie ein unterstützender Prozess aufgebaut ist / sein kann, der – die Ausführung von Tests integriert – die Ausführung von Tests automatisiert – das Reporting von Testausführung integriert ein solcher Prozess aus Sicht der Projektleitung eingeführt wird Seite 38
  • 38. Referenzen [Perry2000] William E. Perry, Effective Methods for Software Testing, 2nd Edition, John Wiley & Sons, Inc., New York, NY, 2000, ISBN 0-471-35418-X [McConnell2004] McConnell, Steve (2004). Code Complete (2nd ed.). Microsoft Press. pp. 960. ISBN 0-7356-1967-0. Seite 39
  • 42. Integrationtesting III Bottom Up Integrationstesting – Low-Level Komponenten zuerst – Einsatz von Treibern, die die Integration auf höherer Ebene simulieren – Setzt entsprechende Designstrategie voraus Seite 43
  • 43. Integrationtesting III Top Down Integrationstest – High-Level Komponenten zuerst – Benötigte Komponenten werden simuliert – Simulation mittels Stubbing/Mocking – Setzt entsprechende Designstrategie voraus Seite 44
  • 44. Intergrationstesting IV Mixed-testing – Button up • Infrastruktur Komponenten – Top down • ansonsten Seite 45
  • 45. Best practices Test Early, Test Often Regression vs. Retesting White-Box vs Black-Box testing Verification and Validation Seite 46