Testautomatisierung

Dienstleistungen zur Testautomatisierung

In Zeiten agiler Entwicklung und immer kürzerer Release-Zyklen stellt die Sicherung einer adäquaten Softwarequalität eine immer größere Herausforderung dar. Dieser Aufgabe kann durch eine effiziente und durchdachte Testautomatisierung begegnet werden, die jeden Schritt des Testprozesses berücksichtigt - beginnend bei den Anforderungen des Systems unter Test bis hin zur automatisierten Ausführung und Auswertung von Tests. 

Basierend auf den Ergebnissen bisheriger sowie aktueller Forschung in der Testautomatisierung bieten wir Dienstleistungen zu modellbasierten Testprozessen sowie zu Continuous Integration für den Einsatz in der Geräte‑ und Systementwicklung an. In unserem modellbasierten Testprozess können Methoden der Modellsynthese, modellbasierten Testgenerierung und Testpriorisierung miteinander verknüpft werden, um systematisch und effizient zu priorisierten Testfällen zu gelangen. Das Ergebnis ist eine optimierte Testsuite, die zum einen eine größtmögliche Abdeckung des zu testenden Systems erlaubt und andererseits durch eine optionale Priorisierung ein zielgerichtetes Testen ermöglicht. Der Prozess ist dabei bezüglich der Auswahl der zu testenden Features parametrierbar und erlaubt somit eine effiziente und bedarfsgerechte Gestaltung des Testprozesses. Über eine Integration des Testprozesses im Rahmen von Continuous Integration-Systemen, wie z. B. Gitlab CI und Jenkins, kann auch die Testausführung- sowie Auswertung automatisiert werden, um ein schnelles und zielgerichtetes Feedback für Entwickler zu ermöglichen.

Folgende Themen sind Teil unseres Portfolios:

  • Modellsynthese aus Anforderungen
    • Methoden/Werkzeuge in Eigenentwicklung
  • Standardisierte und/oder domänenspezifische Modellierungsnotationen
  • Technologien für (modellbasierten) Systementwurf
  • Modellverifikation/-analyse
    • Etablierte Tools (spin, smv, nusmv …)
  • Testgenerierung
    • Methoden/Werkzeuge in Eigenentwicklung
    • Etablierte Tools (Conformiq, SpecExplorer …)
  • Testpriorisierung, -selektion und -scheduling
  • Testdurchführung und -auswertung
    • Methoden/Werkzeuge zur automatisierten Testdurchführung und -auswertung in einem Continuous Integration Prozess (z.B. Jenkins, Gitlab-CI)