At my previous client, we were using Lattu [Abbot] for testing RCP applications. While these tests worked fine on dev laptops, they seem to fail whenever they ran on Continuous Integration [CI] boxes as part of a CI loop. We were using Cruise Control [CC] as the CI server.
On looking into the issue we found several issues.
Firstly, we were running CC as a windows service. For some reason Windows services do not have access to the active screen [desktop] where the RCP application gets launched. Hence Lattu[Abbot] cannot access the RCP app. So we had to run CC in a console mode [start it from a command prompt].
Even though we ran CC in console mode [from a command prompt], we hit another issue. Our client had a very hard policy on screen servers on the server. If any server terminal was unlocked for more than 60 secs, a screen saver would immediately kick in. To get out of the screen saver, you had to enter the user name and password. Even though we hack the machine and remove this policy. There was a big brother program that puts it back.
One solution [work around] we found was, we would remote desktop into the machine from a old [useless] laptop and run CC from that remote desktop session. Then we would leave this remote desktop connection on and that would make sure the Screen saver does not kick in.
It had other issues that not everyone could see what is happening with CC from their machines. They had to go to this laptop and look at it. Accidentally people would kill this remote session and the whole CI loop would be down. Etc…