GuiBrowser/en
Inhaltsverzeichnis
Why is the Widget Hierarchy not Updated Automatically?[Bearbeiten]
Many applications change their state with mouse-enter/leave and especially with focus change events.
Also views such as popup or dialogs might vanish, when you click elsewhere - especially when you leave your application and click in expecco (i.e. change the focus).
An automatic update would make it very hard to inspect and automate this kind of window.
For this reason, expecco will only update its tree upon request - either by mouse click, or by hotkey or by setting a timed update (update after X seconds). Take a look at the items found in the GuiBrowser's update menu ().
Why are Broken Connections not Always Shown Immediately as Such?[Bearbeiten]
Even if there is no interaction with the application will the connection be checked in regular time intervals (a kind of ping). By default, this interval is 5 seconds. It can be changed by evaluating "GuiBrowser::GUIApplication connectionAliveCheckCycle:<seconds>", which can be done in the expecco startup script, in an expecco notepad or in an elementary action.
Start Windows Applications[Bearbeiten]
In general, no applications are started via the GuiBrowser (although it is possible *). Rather, it establishes connections to running applications.
If you have already started your target app on your computer, select eg. "Windows Automation2" in the GuiBrowser when connecting and leave the default settings in the connect dialog (localhost, port=xxxx, timeout=xx s). Then a process is started (WindowsAutomation Client) which connects expecco to your application or desktop. After connecting, you will see the window elements of your application (or all applications on your computer) in the GuiBrowser under the connection.
- To start the application, it is best to create a new block in the test-suite, name it e.g. "Start Client2" and insert one of the existing "OS-Start-Process" blocks (from the standard library).
It is a good idea to put application start and stop into separate actions (and separate testplan elements), because then, you can run individual test steps and actions without a need to restart the app each time. This is also the reason why the GuiBrowser will not automatically record a connection setup step (but present a suggestion, when a connection is selected in its tree).
Press the right mouse button in the editor and select "New Step"" from the menu.
A dialog opens with a list of available blocks that you can add to your current block. Enter "Background OS" as the pattern and you will see the filtered list. Please select the block "Background OS Process [ Start ]" and press OK.
The dialog is closed and a mouse cursor appears over which you can select where you want to place the new block in the network. After the block has been placed, you can parameterize the block (double-click on the input pin to open an editor, or select a pin and select the desired function via the right mouse menu). There you then enter the corresponding defaults, e.g.
Now execute the block "Start Client2" (click on "Play") and the desired application opens.
The new block (Start Client2) can now be used within your test sequence (or better: as the first step in a test plan) to start the application.
(*) but in the included libraries you can also find action blocks to start applications, which you can of course insert into a recorded sequence like any other action. However, we recommend that you define the start and stop of actions as separate steps in the test plan. This may disable them to avoid long startup times during test development.
What is the purpose of the Preview Window (at the bottom left)[Bearbeiten]
- for windowless applications (headless browser)
- for devices on remote computers (also mobile devices in the server room)
- to hold the image of transient (disappearing) windows (i.e. menus and dialogs that disappear in case of focus loss)
- to enlarge sections
- to find out geometry data, such as rectangles or positions
- to provide element highlighting for GUI technologies, which do not support flashing or highlighting