Setting up a continuous integration environment to run 100K+ tests on 12 different browsers is hard, but necessary. Managing the feedback from such a system is also hard, but necessary. Reid shares his valuable perspective based on meeting this challenge for the YUI team; using Yeti, SauceLabs, Jenkins and parallelization.
As you can see in the diagram below, the system uses JSON wire protocol, which can communicate with numerous drivers (selenium grid, ghostdriver, ios-driver, Appium, SauceLabs, etc.) in order to automate just about any browser or even native mobile applications:
We are using Nemo along with Grunt (see grunt task grunt-loop-mocha) and Mocha to write and run automated tests throughout the entire development lifecycle: development, QA, and continuous integration. Look for Nemo to be open source very soon!
One notable change since this talk occurred is that you can now parallelize Nemo tests in order to complete test suites more quickly.