VNC technology overview
As we've already mentioned, T-Plan Robot relies in live desktop
automation scenarios on the Remote
Frame Buffer (RFB) protocol.
This technology is better known by the software implementing it called VNC, Virtual Network Computing.
VNC was originally developed at the Olivetti Research Laboratory back
in 1999. The project was open sourced under GPL in 2002 and the
technology spread through the IT industry. Today there are many
variants of VNC software delivering various free or commercial extra
features; most products however support at least the same basic
functionality
specified by the RFB protocol. For an overview see the Wikipedia
article
on VNC.
VNC operates typically in the client-server scenario over TCP/IP. The
viewer
(client) displays image of the server desktop and sends all your mouse
pointer moves, clicks and drags and keys typed on the client machine
keyboard to the
server. The server sends updated pixels of the remote desktop image
in return.
The RFB protocol (and subsequently the VNC software) have a few
specific
features as well as limitations which have practical impacts on test
automation:
- Transfer of characters
from client to server is limited to the Latin-1 (ISO 8859-1) character
set. It means that you can automate typing of text in most west
European languages (English, German, French, Spanish, ...) but not
other languages (Russian, Chinese, ...).
- To transfer text from the desktop to client one can take
advantage of desktop clipboard changes.
It
is however also limited to Latin-1 and it may require additional
tools and/or configuration. See the T-Plan Robot Enterprise
Release Notes for more information.
- Though most VNC products support file transfers, it is not defined in
the RFB protocol and it's implementation is usually based on
proprietary extensions. As such this functionality is not supported by
T-Plan Robot Enterprise. This may change in the future.
- The protocol supports transfer of desktop bell events (beeps) to the
client. They are typically emitted when the server rings a
bell through printing out the ASCII 0x07 character. This can be used
for example to detect correct completion of a CLI command on Linux/Unix
systems.
It is important to understand that the items listed above are VNC
specific and they are not on the T-Plan Robot side. Other clients which
may be supported in the future may not apply them.
|