Seminar “Softwaretest mit JavaScript”

Aufbau-Seminar

Beschreibung

Softwaretest für JavaScript ist aufgrund der besonderen Ausführungssituationen eine Herausforderung für sich. Dieses Aufbau-Seminar vermittelt einen Überblick über aktuelle Konzepte und Arbeitstechniken für den Software-Test in allen Arbeitsfeldern: Von JavaScript in NodeJS, JavaScript im Browser, Unit-Test in allen Bereichen, Headless-Testing, UI-Test mit Browsersimulation oder -Automation über den Integrationstest ("End-to-End-Test", "E2E-Test") bis zum Last- und Stresstest.

Im Mittelpunkt steht das automatisierte, richtige und sinnvolle Testen von Geschäftslogik, Diensten, GUIs und Web-Anwendungen. Alle Themen werden an überschaubaren Beispiel-Projekten praktisch erarbeitet. Eine fundierte Einordnung in den aktuellen Stand des Software Engineerings und Agiler Entwicklungsmethoden runden das Programm ab.

Zielgruppe

Programmierer, Softwareentwickler, Webentwickler

Voraussetzungen

Praxiserfahrung in der Programmierung mit JavaScript ist erforderlich (vergleichbar mit dem Seminar “JavaScript – Fortgeschrittene Programmierung“). Grundkenntnisse zu SQL und Datenbanken sind hilfreich.

Empfohlene Schulungsdauer

4 – 5 Tage

Schulungsunterlagen

Literatur nach Absprache

Inhalt

Grundlagen

  • Grundsätze des Softwaretests
  • Psychologie des Softwaretests
  • Teststufen: Unit-/Komponententest, Integrationstest, Systemtest, Abnahmetest
  • Testarten: Funktionaler und Nicht-funktionaler Test, Strukturtest, Regressionstest, Wartungstest, ...
  • Testüberdeckung
  • Statischer und Dynamischer Test

Softwaretest in Agilen Methoden

  • Grundgedanken Agiler Software-Entwicklung
  • Stellenwert des Softwaretests in TDD, BDD und FDD

Unit-Test

  • Unit-Test für JavaScript mit Frameworks wie z.B. QUnit, Jasmine o.ä.
  • Vorbereitung der Test-Umgebung
  • Management von Testfällen
  • Testüberdeckung und Code Coverage
  • Aktuelle Bibliotheken und Frameworks

Unit-Test in MVC-Frameworks

  • Besonderheiten beim Test der Controller-Logik
  • Dienste hinter Test-Doubles vestecken
  • Konzepte für Test-Doubles: Mocks, Stubs u.a.
  • Richtiger Einsatz von Test-Doubles in der Praxis

Testen von Web-Anwendungen und Diensten

  • Konzepte: E2E-Test vs. Integrationstest
  • Testszenarien
  • Test-Automation mit aktuellen Tools
  • E2E-Test und Integrationstest in der Praxis

Testen von HTML-GUIs

  • Konzepte für GUI-Test und GUI-Automation
  • GUI-Test z.B. mit Selenium
  • Headless-Test und Browser-Automation in der Praxis

Datengetriebener Test

  • Lösungsansätze mit aktuellen Bibliotheken
  • Management von Test-Daten

Lasttest und Stresstest

  • Full Stack Test und Single Component Test
  • Aktuelle Tools