Über die Centris AG

Die Centris AG ist ein Dienstleister für Schweizer Kranken- und Unfallversicherer und unterstützt diese bei neuen IT-Lösungen. Die von der Centris AG benutzte Software Syrius zur Krankenkassenabrechnung ist eine Java Anwendung, die langsam durch JavaFX ersetzt wird.

Ausgangssituation Swing - Aufbau/Struktur

Das Design des Centris AG QF-Test-Testframeworks ist so gestaltet, dass jeglicher (fach-) logische Testablauf einer zu testenden Anwendung auf einfache Weise in einem Datentreiber abgebildet werden kann. Dies dank der frei wählbaren Aufteilung der Quell-Dateneingabe in einen Navigations- und/ oder einen Dateneingabe Bereich. Die Ablauflogik mit den entsprechenden Eingabewerten, formuliert in Excel-Tabellen (Datentreiber), entsprechen praktisch 1:1 dem GUI-Design resp. der Namensgebung der zu bedienenden Komponenten der Anwendung.

Die Voraussetzungen dazu sind:

  • Implementierung generischer Komponenten, für jede relevante Klasse (ca. 30: von genericTextField über genericMultiChoiceComboBox bis zu genericList).
  • Implementierung eines Name-Resolvers, zur Ermittlung von eindeutigen und dem GUI entsprechenden Komponenten-Bezeichnern für Textfelder, Checkboxen etc.

Portierung Swing auf FX

Die zentrale Aufgabe bei der Portierung von Swing nach FX war:

  • Anpassung/Erweiterung bestehender, resp. Implementierung neuer generischen Komponenten.
  • Neuer Name-Resolver für JavaFX, zur Namensgebung der anzusteuernden Komponenten und der Realisierung der Komponentenerkennung.

Fazit

Der Anpassungsaufwand der Migration war relativ gering. Änderungen in der Grundstruktur waren wenige erforderlich, außer der Portierung einiger weniger Jython/Groovy-Skripte (Utilities) nach JavaFX. Den Resolver konnten wir relativ 'flüssig' umsetzen, mit ein bis zwei Problemen, welche wir mit der Unterstützung durch QFS zusammen lösen konnten; wie z.B. der nachträgliche Einbau der fehlenden 'Imagehashes' in den Extrafeatures.

Aussicht

Die Migration (von bisher ca. 80%) erforderte ca. einen ‚Mannmonat‘. Das ‚Feintuning‘, z.B. beim Timing, ist eine Daueraufgabe.

Die restlichen 20% werden fortlaufend portiert und wir sind durch die bisherigen Erfahrungen zuversichtlich, nicht auf grössere Schwierigkeiten oder Unerwartetes zu stoßen.

Die bis anhin recht problemlose Migration bestätigte das Testkonzept der Centris AG und die Wahl des richtigen Testautomation-Tools.

Wir sind deshalb sehr optimistisch die Portierung, auch mit Hilfe des sehr kompetenten, schnellen und freundlichen Supportes von QFS bald abzuschließen um bald in den ‚Wartungs-Modus‘ umschalten zu können.

Zukunft

Java-9 … lass dich überraschen ;-)