QT Testing

Aus expecco Wiki (Version 2.x)
Zur Navigation springen Zur Suche springen

QT[Bearbeiten]

QT-Download[Bearbeiten]

https://www.qt.io/download

Unterstützte Versionen[Bearbeiten]

expecco unterstützt das Testen von QT-Applikationen unter Windows und Linux, die mit der QT-Version 5 erstellt wurden.

Für die verschiedenen QT-Versionen, Entwicklungsumgebungen (VisualStudio, ...) und Rechnerarchitektur (32-/64 bit) stellen wir eigens erzeugte Bibliotheken (dll, so) zur Verfügung. Einige davon werden standardmäßig mit expecco ausgeliefert. Für andere Versionen erzeugen wir die Bibliothek auf Anfrage.

Testvorbereitungen[Bearbeiten]

Um mit expecco eine QT-Application zu testen, wird in das zu testenden Programms die von uns ausgelieferte Bibliothek expeccoTestService.[dll/so] eingebunden. Dies erfolgt über ein inject script ohne Eingriff in den Sourcecode des zu testenden Programms (Anleitung).

Alternativ kann die expeccoTestService-Bibliothek auch in den Sourcecode der zu testenden Applikation integriert werden (Anleitung)

Testen von QT-Quick/QML-Programmen[Bearbeiten]

QT-QML-Anwendungen können ab expecco 21.2 mit der expecco QTLibrary getestet werden.

Die Bausteine, die für QML-Tests verwendet werden können, sind mit dem Etikett / Tag qt-quick versehen. Um dies an den Bausteinen zu verdeutlichen, können diese mit einer besonderen Farbe dargestellt werden. Dies kann über die expecco-Einstellungen konfiguriert werden (Extras - Einstellungen - Look & Feel - Farben per Etikett (Tag))

QWidget-Bausteine sind dabei für QT-Quick-Elemente, die sich von QQuickItem ableiten, anwendbar. QQuickItemView-Bausteine sind für die Listen-Elemente von Qt-Quick geeignet.

Qt Bekannte Probleme[Bearbeiten]

QApplication::ShortCutEvent[Bearbeiten]

Aufgrund von internen Änderungen in QT Version 5 funktioniert der Baustein nicht mehr. Ein Workaround besteht darin, die Tastenereignisse separat zu senden, wie im Beispiel im Reiter Test/Demo der Aktion gezeigt.


Zurück zu Qt Plugin Reference



Copyright © 2014-2024 eXept Software AG