[KT2L] Suspecte Assertation Exception mit Vaadin in Selenium Chrome Driver

Für einen Abend Kopfschmerzen hat mich eine merkwürdige Exception gekostet, die nur in den Tests mit Selenium auftritt. In der Entwicklung ist die Exception nicht aufgetaucht.

Eingrenzen konnte ich die Quelle zumindest im Source-Code auf eine Änderung in der DeskTabBar. Hier habe ich anstelle von einem setContent( newPanel ) nun alle Panels in ein Layout gepackt und nur das Panel sichtbar, das aktuell aktiv ist. Damit gehen die Inhalte des Panels nicht verloren, bzw. muss nicht neu gerendert werden (vor allem mit Addons gibt es hier oft Probleme, z.B. vis und xTerm).

Bei der Änderung wird an jeden Panel die CSS-Class 'hidden' angehängt. Genau dieser Befehl löst die `Assertation: null` Exception von Vaadin aus. Die Exception wird in einem anderen Thread geworfen.

Als Lösung kann DaskTabBar nun beide Strategien umsetzen. In den Selenium-Tests wird das Alte Vorgehen genutzt, im Betrieb das Verbesserte.


Kommentare

Beliebte Posts aus diesem Blog

Sonatype Nexus fails with random "peer not authenticated" errors behind ingress

[mhus lib] Reorg in generation 7 nearly finished

Creating a flux sync configuration referring a config map for substitution