This document describes how TestSwarm can be used in a large scale testing environment. Features:
Summary of used technologies:
The following prerequisites are assumed to be installed already (this document does not cover setting that up, these software packages have their own manuals):
Note that using Jenkins and BrowserStack is not a requirement for a working continuous integration environment with TestSwarm. TestSwarm itself is (although basic) a fine continuous integration framework on its own. If you prefer to use TestSwarm (instead of Jenkins) as the central manager of your workflow that is also possible. In that case you will have to find a different way to trigger jobs. For example you could write your own script (e.g. ran from cron) that checks your incoming source of commits (Self-hosted Git or SVN repo, GitHub, Gerrit, ..) and take care of copying the source at the current revision into a static directory and submit jobs from there.
Likewise using BrowserStack is not required. There are alternatives (check out this StackOverflow post), but those may or may not have an API that allows automatic starting and terminating of browsers. You can also populate your swarm manually by crowdsourcing it. If you can rely on that, go for it (and that's free, whereas BrowserStack (or other cloudbased solutions) may not be free).