Announcing Sauce Breakpoints for Easier Test Debugging

At Sauce, we care about testing because we care about speeding up the development cycle. Today we're announcing a new weapon in the fight against the often time-consuming practice of test-debugging: Sauce Breakpoints.

Anyone who's run into Selenium tests failing due to Javascript issues knows that browser plugins like Firebug or Chrome Dev Tools are an essential part of fixing broken tests. But using such tools during the execution of a Selenium script is often difficult or impossible, depending on your Selenium infrastructure. Sauce Breakpoints lets you tell the remote browser to stop listening for Selenium commands from your test, effectively pausing the test run and leaving the browser in an investigable state.

With Sauce, it has always been possible to watch your test run in real time through a live VNC connection. Now you can not only watch, but also control the virtual machine. One common scenario in web development is when a Javascript error prevents some desired action from taking place or keeps some element from being displayed. In these cases, Selenium will often time out, with no clue as to what the specific problem was. Hitting the "Breakpoint" button while watching one of these tests run on Sauce will let you jump into the driver's seat and open up dev tools. This way you can see whether a Javascript error has indeed occurred or whether an object is unexpectedly null.

When you're done gathering the information you need to help debug the test, you can simply click the "Stop Job" button to shut down the VM. Jobs that have been 'breakpointed' in this way will be marked as such on the jobs page, so you know that they have been taken off Selenium autopilot.

For a more in-depth introduction to Sauce Breakpoints, watch this screencast:

Sauce Breakpoints constitute the first step towards bigger goals for Sauce. We have been dreaming up ways to go beyond building a rock-solid Selenium cloud---we want to help you write and run tests faster and more painlessly, so that more of your focus can go to developing and shipping features. With that in mind, we'd love your feedback on this first iteration of something we hope will grow into more features soon. To that end: what else would make your Selenium testing easier as a test developer? Let us know in the comments!

Written by

Jonathan Lipps

Topics

SeleniumProgramming languages