VNC: synchronization of screen content for wait and capture not working properly

Bug #1817046 reported by Christoph Fetzer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
SikuliX
In Progress
Medium
RaiMan

Bug Description

Hi!

I am currently developing some software tests using virtual Windows 7 and 10 guests in VirtualBox. My VNC-Server on the guests is TigerVNC.

What I am trying:

client = vncStart(ip="192.168.56.100", port=5900, password="vnc" )
wait( 1 )

client.keyDown( Key.WIN )
client.type( "r" )
client.keyUp()

client.wait("Run.png",60)

Run.png is a screenshot of the "run"-panel in Windows 7 or 10.
This wait fails on both Windows 7 and 10.
The reason seems to be a failing synchronisation of the screen contents to the client-object.
As a proof I made a capture of the client after 120s and attached the files for Windows 7 and 10.
The code:
client.keyDown( Key.WIN )
client.type( "r" )
client.keyUp()

wait( 120 )
client.capture().saveInBundle("Win10.png")
Remark: on the virtual box window itself, I see the open run-panel, only the capture is empty.

When I'm doing the wait and search-commands in my tests undotted on the virtual desktop window , everything works fine. I only avoid this with the goal starting the tests from a jenkins server testing virtual machines later.

Best regards,
Christoph

Revision history for this message
Christoph Fetzer (christest) wrote :
RaiMan (raimund-hocke)
Changed in sikuli:
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → RaiMan (raimund-hocke)
milestone: none → 1.1.4
summary: - VNC synchronisation of screen content for wait and capture not working
- properly
+ [1.1.4] VNC: synchronization of screen content for wait and capture not
+ working properly
Revision history for this message
Tannalein (tannalein) wrote : Re: [1.1.4] VNC: synchronization of screen content for wait and capture not working properly

Hi,

I'm having the same problem on Ubuntu guest machine running TigerVNc server. It would seem that Sikuli only sees the state of the screen as it is at the moment of connection. If I set Sikuli to connect to the guest machine, take a screenshot, set wait to 30 seconds, manually move things around the screen, and after those thirty seconds Sikuli takes another screenshot, I get the exact same image. The clock doesn't move. If you check the screenshots Christoph posted, you can see that the file was created at 11:11, but the Windows clock on the screenshot says 11:09. The screenshot was two minutes old at the time it was saved.

The issue seems to be connected to TigerVNC, because if I connect with Vino VNC, which is the default VNC server on Ubuntu, I don't get this issue. I do, however, get a garbled screenshot, which was the reason I switched to TigerVNC.

RaiMan (raimund-hocke)
Changed in sikuli:
milestone: 1.1.4 → 2.1.0
summary: - [1.1.4] VNC: synchronization of screen content for wait and capture not
- working properly
+ VNC: synchronization of screen content for wait and capture not working
+ properly
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.