I'm trying to build system tests into Jenkins. The trouble is I need to test distributed deployments where the multiple instances of the software under test automatically connect to each other. The steps should be as follows:
- A Jenkins machine handles the build job (maven).
- On successful completion, it deploys the artifacts on a number of machines (Windows 7, XP and Linux)
- Those machines kill the previous execution of the software under test and start it again (with the recently deployed version)
- The Jenkins machine then runs a set of tests that make use of the remote deployments
What I am currently considering is using Fabric (with Cygwin on the Windows machines), and use ant tasks in maven to orchestrate it all.
Before I commit to this, though, I'd like to hear some of you testing experts in case I'm making my life harder than it should be ;)
Thanks!