Con9nuous Integra9on TESTS IN MINUTES o Test every commit o Test on mul9ple environments o Run all tests o Push every day
Selenium 1 Grid PROBLEM • Unstable Tests • Ineﬀec9ve CI o We are a C# shop and Selenium Grid is Java o We could not ﬁnd any exis9ng C# grid o We didn’t know when Grid 2 would be available o We didn’t have 9me to wait for Grid 1 releases
ZocGrid: “Client Knows All” Architecture • Local Resources • Local Execu9on • Lighter ZocGrid Server Load • Has access to na;ve opera;ng system !!!
CI starts a Central Grid Server Grid Client grabs latest DLL from server Sends Test Names VM VM ZocGrid Client ZocGrid Client (Running .net exe) (Running .net exe) QA Test Environments Web Server
Parallel Execu9on o Time it takes to run each test o What tests were running at the same 9me o What browser were the tests running on
Addi9onal • Run any subset of scripts • Run scripts against any speciﬁed URL • Run scripts in a speciﬁc or randomized order • Run in a speciﬁc browser • Run SQL queries • Automa9cally rerun tests under user-‐speciﬁed condi9ons • Detect network disconnects, automa9cally update codebase, restart browsers
What’s Next? • We have a large pool of VMs … • We can target any url … • We can specify what browser to test … • We can control what tests to run … • We can run tests on mul9ple environments concurrently …
Why not give developers grid server to run the suite of tests against their local changes or code branches using the VM pool?
We Are Hiring! hcp://www.zocdoc.com/careers THE END