Forum: PC-Programmierung GUI Objects auslesen


von Dirk (Gast)


Lesenswert?

Hallo, ich würde gerne wissen, welche Technologie solche GUI Tester 
Applikationen nutzen um die GUI Objekte / Properties auszulesen, 
insbesondere für Crossplatform / Frameworks (Java, WPF Xaml, Qt).

https://www.ranorex.com/resources/

von Ich (Gast)


Lesenswert?

Bei Zugriff auf den Quellcode läuft das bei Qt über das QMetaObject 
System.

von Tim S. (Firma: tsx89) (freak_ts) Benutzerseite


Lesenswert?

Ganz Allgemein: "Schnittstellen" wie z.B. "Windows-Messages".
Es werden Klassen und Objekte gefiltert, die ein GUI-Attribut (o.Ä.) 
besitzen. Dessen "Speicherbereich" wird dann nach Inhalten (Member, 
Propertys, Child-GUI-Objekte) durchsucht, und die Member werden 
bekannt...

Das Testprogramm kann in ner Art "Sandbox" Ausgeführt werden, da kommt 
man dann fast überall drann.

Oder etwas klemmt sich zwischen dem zu testenden Programm und der 
Windows-API, (verglichen wie etwa eine Firewall o. Antivirus,) der die 
Programm-Initialisierungen und Zugriffe Loggt bzw. verändern kann. (Iss 
bisschen blöd beschrieben)

Ich denke aber dass muss für die jeweiligen "Crossplatform / Frameworks 
(Java, WPF Xaml, Qt)" einzeln implementiert werden. Sonnst wird das doch 
totales Rätzelraten.

Bei WPF XAML z.B über Reflection und das .Net Framework.
Bei Java über die JRE/JDK Runtime. Ich glaub das heißt da auch 
Reflection.
Ich schrieb:
> bei Qt über das QMetaObject System.

Wenn das dann "reflected" (oder wie auch immer) ist, kann man sein 
GUI-Objekt "ganz normal" über das jeweilige Framework \ Runtime \ 
Library anspechen: z.B. Form1.Slider1.Value = 75;

Würde mich aber auch interssieren ob´s da nen "Überall-Standard" gibt, 
der dann auch zur Laufzeit geht...

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.