Test Automatisierung

Seit vielen Jahren setze ich neben manuellen Tests auch automatisierte Tests im Test Management ein.
Bereits im Entwicklungsprozess kann über eingebettete automatisierte Unit-Tests ein Softwaremodul getestet werden. Werden diese Tests im Build- und Deployment Management während eines Daily-Builds ausgeführt, lassen sich auf diese Weise frühzeitig Fehler identifizieren und beheben.
Mit der Bereitstellung einer Softwae für die QA, Pre-Production und Produktion kann durch automatisierte Annahmetests schnell die grundsätzliche Bereitschaft (Readyness) der Software ermittelt werden.
Wiederkehrende Regressionstests lassen sich durch die Testautomatisierung ohne großen zeitlichen Aufwand durchführen.
Schnittstellen- und API-Tests werden aufgrund Ihrer Ausführungsart ebenfalls häufig mit Hilfe der Testautomatisierung durchgeführt.
Last- und Performancetest werden häuftig bei großen Marketing-Maßnahmen im Vorfeld durchgeführt. Mit ihnen kann ein hohes Nutzeraufkommen durch viele Testwiederholungen in kurzer Zeit simuliert werden. Diese Tests geben Aufschluß über das Verhalten der Software in Lastsituation. Häufig werden hierbei Performanceprobleme, Speicherleaks, Sesson-Handling-Probleme und ähnliche Fehler erkannt. Bei gleichzeiger Überprüfung des gesamten Environments lassen sich Aussagen über das Lastverhalten aller beteiligen Komponenten (Software, Hardware und Netzwerk) treffen und Verbesserungsmaßnahmen ableiten.
Das
Monitoring unternehmenskritischer Geschäftsprozesse und Services gehört ebenfalls zur Testautomatisierung. Häufig werden diese Tests auf Automatisierungsservern ausgeführt und die Ergebisse über eine Dashboard, einen Email-Report oder eine Alarm-Funktion der Betriebsüberwachung und Stakeholdern zur Verfügung gestellt.

  • Tools zu Testerstellung:
  • IDE: IntelliJ IDEA, eclipse, Visual Studio Code, pyCharm
  • Prozess-Tests: Selenium (Java), Selenium IDE, Selenium Grid, Selenide, Playwright, TestNG, Cucumber
  • Last & Perfomance-Test: JMeter
  • Functional Tests (Windows): HP Unified Functional Testing (UFT) / QuickTest Professional (QTP)
  • Sourcecode-Tests: JUnit
  • API-Tests: SoapUI
  • WebPage-Test: WPT WebPageTest
  • Test-Framework: Cucumber-JVM
  • Test Reporting: Allure, Tableau, Birt, Jasper
  • Automatisierungsserver: Jenkins, Bamboo
  • Programmiersprachen: Java, Javascript, python, perl