This page describes steps needed to run SWTBot on a Continuous Integration server. You can use SWTBot with Hudson CruiseControl CruiseControl.NET CruiseControl.rb or any other CI server of your choice.
A lot of people use a setup where there are multiple environments running on VMWare/Zen or other virtualization products. Others prefer to use a single machine to run a build.
- Ensure that your session has screensaver disabled.
- Ensure that your session does not 'lock up' after a specified period.
Windows requires that the process running SWTBot tests has a proper "session". A session in this case means a user logged in into the machine (if you have physical access to the keyboard/mouse or vmware console access). If the only access you have is over RDP, you need to ensure that the user running the tests is *always* logged in.
See this discussion for more details.
Linux is also a bit similar. Most CI tools support running the build job using a "display". Hudson has a XVnc plugin for this purpose. If you're running tests using XVnc (or other flavor of VNC) you must ensure that there is a window manager (gnome/xfce/kde) is present. I've noticed that there are certain setups where there is no window manager present and managing/changing window focus does not work right.