O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Basiswissen Testautomatisierung, 2nd Edition

Book Description

  • pragmatische Darstellung viele Fallbeispiele auch auf Einsatz in agilen Projekten wird eingegangen* Autoren in der Test-Community sehr aktiv und bekannt

Table of Contents

  1. Cover
  2. Titel
  3. Impressum
  4. vorwort zur 2. auflage
  5. Geleitwort von Mark Fewster
  6. Geleitwort von Harry M. Sneed
  7. 1 Motivation und Einleitung
    1. 1.1 Standards und Normen
    2. 1.2 Der Einsatz von Maschinen
    3. 1.3 Mengen und Massen
    4. 1.4 Was ist unter Testautomatisierung zu verstehen?
    5. 1.5 Kontrollfragen zum Kapitel
  8. 2 Testprozess und Entwicklungsvorgehen
    1. 2.1 Der fundamentale Testprozess
      1. 2.1.1 Testplanung, Testüberwachung und -steuerung
      2. 2.1.2 Testanalyse und Testentwurf
      3. 2.1.3 Testrealisierung und Testdurchführung
      4. 2.1.4 Bewertung von Endekriterien und Bericht
      5. 2.1.5 Abschluss der Testaktivitäten
    2. 2.2 Softwareentwicklungsmodelle und Projektvorgehen
      1. 2.2.1 Klassische Entwicklungsmodelle
      2. 2.2.2 Iterative und agile Entwicklungsmodelle
      3. 2.2.3 Prozessreifemodelle und Testautomatisierung
    3. 2.3 Kontrollfragen zum Kapitel
  9. 3 Testfallspezifikation und -durchführung
    1. 3.1 Testfalldesign und Testfallerstellung
      1. 3.1.1 Kombinatorik
        1. 3.1.1.1 Äquivalenzklassenbildung
        2. 3.1.1.2 Grenzwertanalyse
        3. 3.1.1.3 Klassifikationsbaummethode und Kombinatorik
      2. 3.1.2 Testfallerstellung auf Basis von Modellen
    2. 3.2 Testdatenbeschreibung
      1. 3.2.1 Syntaxbezogene Testdaten
      2. 3.2.2 XML
    3. 3.3 Automatisierte Testdurchführung
      1. 3.3.1 Zeitliche Taktung
        1. 3.3.1.1 Ständige Durchführung
        2. 3.3.1.2 Häufige Durchführung
      2. 3.3.2 Fallweise Durchführung
      3. 3.3.3 Fehler-Workflow
        1. 3.3.3.1 Fehler im Automatisierungswerkzeug
        2. 3.3.3.2 Fehler im Automatisierungsframework
        3. 3.3.3.3 Testfall-Debugging
        4. 3.3.3.4 Durch die Automatisierung festgestellte Fehler
        5. 3.3.3.5 Effektivität der automatisierten Testdurchführung
    4. 3.4 Kontrollfragen zum Kapitel
  10. 4 Konzeption eines Automatisierungsframeworks
    1. 4.1 Technische Konzepte
      1. 4.1.1 Die grafische Benutzerschnittstelle
        1. 4.1.1.1 Über Objekte in grafischen Benutzeroberflächen
        2. 4.1.1.2 Erkennungsmerkmale
        3. 4.1.1.3 Erkennung von Objekten anhand der grafischen Darstellung
        4. 4.1.1.4 Kataloge von grafischen Elementen
        5. 4.1.1.5 Ausführung von Aktionen und Auslesen von Werten auf grafischen Benutzerelementen
        6. 4.1.1.6 Erweiterung von Automatisierungsunterstützung
      2. 4.1.2 Webapplikationen und Webservices
        1. 4.1.2.1 Webapplikationen
        2. 4.1.2.2 Webservices
        3. 4.1.2.3 XPath
      3. 4.1.3 CSS-Selektoren
      4. 4.1.4 Datenbanken
      5. 4.1.5 Schnittstellen und Hilfsmittel für Testautomatisierung
        1. 4.1.5.1 Datenhaltung
        2. 4.1.5.2 Webservices
        3. 4.1.5.3 Fixtures
        4. 4.1.5.4 Mocks
      6. 4.1.6 Service-Virtualisierung
        1. 4.1.6.1 Warum Service-Virtualisierung
        2. 4.1.6.2 Technische und organisatorische Umsetzung
        3. 4.1.6.3 Service-Virtualisierung im Softwarelebenszyklus
        4. 4.1.6.4 Entwicklung und Test
    2. 4.2 Logische Konzepte
      1. 4.2.1 Typische Formen von automatisierten Testfällen
        1. 4.2.1.1 Programmatische Testfalldarstellung und reines Capture & Replay
        2. 4.2.1.2 Datengetriebene Testfalldarstellung
        3. 4.2.1.3 Schlüsselwortgetriebene Testfalldarstellung
        4. 4.2.1.4 Schlüsselwortauswahl anhand der Konfiguration
        5. 4.2.1.5 Kompakte Testfälle (nach A2A)
      2. 4.2.2 Kriterien zur Entscheidung für eine Testfalldarstellung
        1. 4.2.2.1 Benutzergruppe
        2. 4.2.2.2 Anzahl der Testfälle
        3. 4.2.2.3 Ähnlichkeiten zwischen Testfällen
        4. 4.2.2.4 Komplexitätsverteilung der Testfälle
    3. 4.3 Struktur, Design und Umsetzung
      1. 4.3.1 Warum eine Automatisierungsstruktur aufbauen?
      2. 4.3.2 Grundlegende Struktur
        1. 4.3.2.1 Testdaten und Testabläufe
        2. 4.3.2.2 Abarbeitende Schicht
        3. 4.3.2.3 Technisch-fachliche Schicht
      3. 4.3.3 Werkzeuge und Schnittstellen
      4. 4.3.4 Bezug zu verbreiteten Automatisierungsformen
      5. 4.3.5 Umsetzung eines Automatisierungsframeworks
      6. 4.3.6 Umsetzung von kompakten Testfällen (nach A2A)
        1. 4.3.6.1 Details der Funktionsweise
        2. 4.3.6.2 Organisatorische Aspekte
    4. 4.4 Kontrollfragen zum Kapitel
  11. 5 Einsatzgebiete
    1. 5.1 Einsatzgebiete nach Systemart
      1. 5.1.1 Desktop-Applikationen
      2. 5.1.2 Client-Server-Systeme
      3. 5.1.3 Webapplikationen
      4. 5.1.4 Mobile Applikationen
        1. 5.1.4.1 Herausforderungen bei der Automatisierung mobiler Applikationen
        2. 5.1.4.2 Lösungsansätze
      5. 5.1.5 Webservices
      6. 5.1.6 Data Warehouse
      7. 5.1.7 Dynamische GUIs: Formularlösungen
      8. 5.1.8 Cloud Based Systems
    2. 5.2 Einsatzgebiete nach Testart
    3. 5.3 Softwarequalitätskriterien
      1. 5.3.1 Funktionalität (functional suitability)
      2. 5.3.2 Performanz (performance efficiency)
      3. 5.3.3 Kompatibilität (compatibility)
      4. 5.3.4 Benutzbarkeit (usability)
      5. 5.3.5 Zuverlässigkeit (reliability)
      6. 5.3.6 Sicherheit (security)
      7. 5.3.7 Wartbarkeit (maintainability)
      8. 5.3.8 Übertragbarkeit (portability)
    4. 5.4 Einsatzgebiete nach Projektart
      1. 5.4.1 Das klassische Softwareentwicklungsprojekt
      2. 5.4.2 Das Wartungsprojekt und die Produktweiterentwicklung
      3. 5.4.3 Das SAP-Projekt
      4. 5.4.4 Agile Projekte
      5. 5.4.5 Migrationsprojekte
      6. 5.4.6 Last- und Performanztest
        1. 5.4.6.1 Arten von Last- und Performanztests
        2. 5.4.6.2 Tätigkeiten im Projekt
        3. 5.4.6.3 Definieren der Performanzziele
        4. 5.4.6.4 Identifizieren der Transaktionen bzw. Szenarien
        5. 5.4.6.5 Erstellen der Testdaten
        6. 5.4.6.6 Erstellung von Testszenarios
        7. 5.4.6.7 Durchführung der Tests
        8. 5.4.6.8 Monitoring
        9. 5.4.6.9 Typische Komponenten von Last- und Performanzwerkzeugen
        10. 5.4.6.10 Checklisten
    5. 5.5 Kontrollfragen zum Kapitel
  12. 6 Testdurchführungswerkzeuge
    1. 6.1 Evaluierung von Automatisierungswerkzeugen
      1. 6.1.1 Unterstützte Technologien
      2. 6.1.2 Möglichkeiten der Testfallbeschreibung und Modularisierung
      3. 6.1.3 Zielgruppe
      4. 6.1.4 Integration in die Werkzeuglandschaft
      5. 6.1.5 Teststellungen
      6. 6.1.6 Schulungen, Support und Dokumentation
      7. 6.1.7 Lizenzmodell
    2. 6.2 Evaluieren leicht gemacht
      1. 6.2.1 Vorbereitung der Szenarien
      2. 6.2.2 Vorbereitung des Testrechners
      3. 6.2.3 Installation des Werkzeugs und Erstellung des Arbeitsbereiches
      4. 6.2.4 Erstellen des ersten Szenarios
      5. 6.2.5 Refactoring und Variabilisierung des ersten Szenarios
      6. 6.2.6 Umsetzung weiterer Szenarien
      7. 6.2.7 Integration in den Entwicklungsprozess
      8. 6.2.8 Abschluss
    3. 6.3 Einige Automatisierungswerkzeuge im Überblick
      1. 6.3.1 Kommerzielle Testwerkzeuge
        1. 6.3.1.1 HP Unified Functional Testing
        2. 6.3.1.2 MicroFocus SilkTest
        3. 6.3.1.3 IBM Rational Functional Tester
        4. 6.3.1.4 Tricentis Tosca Testsuite™
        5. 6.3.1.5 Ranorex Studio
        6. 6.3.1.6 Microsoft Visual Studio und Team Foundation Server
      2. 6.3.2 Open-Source-Werkzeuge
        1. 6.3.2.1 Selenium
        2. 6.3.2.2 Canoo Webtest
        3. 6.3.2.3 xUnit
        4. 6.3.2.4 Fit, Slim und FitNesse
        5. 6.3.2.5 SoapUI
    4. 6.4 Kontrollfragen zum Kapitel
  13. 7 Integration in die Organisation
    1. 7.1 Ab heute wird automatisiert!
    2. 7.2 Die Rolle des Testautomatisierers
    3. 7.3 Kontrollfragen zum Kapitel
  14. 8 Ausblick
    1. 8.1 Herausforderungen in der Testautomatisierung
      1. 8.1.1 Technische Schnittstellen
      2. 8.1.2 Organisatorische Schnittstellen
      3. 8.1.3 Testautomatisierung als komplexe Aufgabenstellung
    2. 8.2 Trends und mögliche Entwicklungen
    3. 8.3 Kontrollfragen zum Kapitel
  15. Anhang
    1. A Anhang 1
    2. B Anhang 2
    3. C Glossar
    4. D Quellenverzeichnis
  16. Stichwortverzeichnis
  17. Fußnoten