Automatisierte GUI Tests mit Selenium

Ein Seminar von Dr. Alexander Kaiser

In diesem Seminar wird gezeigt, wie man graphische Benutzeroberflächen von Websites mit C# und Selenium automatisiert testen kann. Es richtet sich an Entwickler, die Interesse an der Qualitätssicherung ihrer Software haben.

Dr. Dipl.-Inform. Alexander Kaiser ist Software-Qualitätsmanager bei der
TRUMPF Werkzeugmaschinen GmbH+Co.KG. Er promovierte
an der Oxford University in England zum Thema Qualitätsmethoden in
der Softwareentwicklung. Dr. Kaiser hat langjährige Praxiserfahrung im Be-
reich Software-Qualitätssicherung, insbesondere in der Gestaltung und
dem Aufbau automatisierter Quality-Gates.

Theorie und technische Grundlagen

  • Testautomatisierung in C#
  • Testebenen: Vom Unit- zum Systemtest
  • Automatisierte Oberflächentests
    • Motivation
    • Grundlagen
      • UI Technologien
      • Schnittstellen zur Automatisierung
      • Automatisierungsbeispiele für Apps, Desktop- und Web-Anwendungen
  • Das Page Object Pattern
    • Anforderungen an Oberflächentests
    • Page Objects: Die Idee
    • Control Objects: Die Idee
    • Der Page Object Baum-Ansatz
    • Tutorial: Erstellen eines einfachen Tests
  • Praxisbeispiele
  • Best Practices
  • Selenium für C#
    • Was ist Selenium
      • Konzepte
      • Architektur
      • Funktionsumfang der API
    • Erste Schritte
      • Testprojekt erstellen
      • Einen einfachen Test erstellen und ausführen
      • WebDriver für unterschiedliche Browser installieren
      • Test in unterschiedlichen Browsern ausführen
    • Die Selenium WebDriver API
      • Browser Abstraktion IWebDriver
      • Navigieren mittels INavigation
      • Oberflächenelemente suchen und finden
      • Control Abstraktionen
      • Implizite Wartezeiten konfigurieren
    • Tools zum Erstellen von Suchkriterien
    • Ausführliches Tutorial

Praktische Anwendung

  • Anwendung des Gelernten an einem von den Teilnehmern ausgewählten Projekts
    • Code Grundlagen erarbeiten
    • Umsetzung realer Testszenarien für die Zielanwendung
    • “Einfachst” Test
    • “Smoke Test”
    • Einfache User Story
    • Komplexere User Story
  • Analysierbarkeit von Testergebnissen verbessern
    • Screenshots vom Fehlerzustand
    • Videos von Testläufen
    • Zuverlässigkeit von Tests kontrollieren
    • Diskussion
    • Mehr Sicherheit durch graphische Vergleiche
    • Ausführen der Tests in einem CI System
    • Parallele Testausführung
    • Cloud und Remote Testing

Termine nach Vereinbarung.

Kontakt:

Dr.  Alexander Kaiser
.img@.img