[eggPlant Functional] Scripting through a SUT restart
The code below demonstrates the method for scripting through the restart of a Windows system; you'd do something similar for other operating systems.
The Windows OS presented a complication that required a couple of workarounds. The VNC server was running as a service and it seemed to persist into part of the shutdown process. So the connection would be dropped initially, but a reconnect could be made briefly while the machine was shutting down. So to ensure that a successful connection had taken place after the restart, I had to add a visual confirmation that the Start menu was displayed. If it is not, I assume that I've reconnected during the shut down, force a disconnect, and return to the beginning of the repeat loop.
-- store the current connection information to use as the argument to the connect command later put connectionInfo() into myConnection -- do restart here repeat while connectionInfo().connected is "true" -- make sure the connection has been closed by the remote system wait 1 end repeat -- now try to reconnect repeat while connectionInfo().connected is "false" try connect myConnection -- make sure the machine has really restarted -- the vnc server seems to spring back to life momentarily during shutdown RefreshScreen if not imageFound("StartMenu") disconnect next repeat end if catch wait 5.0 end try end repeat