Future plans for CrossBrowserTesting.com

With our new architecture, web site, and hardware platform, we are now positioned for some exciting new capabilities. We wanted to share with you some of our plans for the service:

Selenium testing / scripted screenshots
Our screenshot service was built on top of a Selenium engine. For those not familar with Selenium, it is a open source suite of tools that helps automate web app testing across many platforms. While this platform is a little bit of an over kill for screenshots, and honestly we would have a little faster screenshot performance without it, it put us in a great position for using and exposing this Selenium engine. We have already tested writing Selenium scripts and deploying them against our configurations. The Selenium IDE makes it easy to record scripts. We plan to enable our users to submit custom scripts to our service, and run these scripts across a wide range of browsers and platforms. This will have 2 benefits:
You will be able to quickly create a script that will walk through your site, taking screenshots as you go. This will enable you to check your layout across multiple pages without submitting each individual url. It will also allow you to take screenshots of areas that you cannot get to by just entering a url - i.e. password protected areas or javascript oriented pages that you need to take certain manual operations to put in a different state.

Api for scheduled running
We plan to enable an API for both our screenshot service and the planned Selenium testing to allow companies to integrate these testing services into their current build process. With the screenshot service, this will allow you to take screenshots of key pages after a change to verify the layout. With the Selenium testing, you will be able to test functional flows through your site after a code change, checking to see which browsers / platforms have issues.

Automatic image comparison
We have done some testing with using automatic image comparison algorithms against the full page screenshot results to determine the 'outliers', i.e. the images which are most different. We believe the ability to automatically determine the 'bad' screenshots will be useful both when running tests interactively and when scheduling a test via the api.

VPN enable configurations so you can test sites behind your firewall
This is an obvious need - allow pages in test and development to be tested via live testing, screenshots, and Selenium. One of the key design choices we made with the development of our screenshot system is we boot from a locked configuration every time we run a screenshot, take the screenshot, then shutdown the system. This is the same process we follow with our live tests. While there are negative consequences to this in speeed and resource usage, it guarantees privacy between our users - each session gets a 'clean' configuration. With the VNC capability, when we boot we will launch a VNC client which will connect to the company's VNC server, allowing that one configuration to access the needed internal resources. Once it is finished and the configuration is reclaimed, the configuration reverts to a 'clean' config - no trace of the previous VPN connection is left. We feel this privacy between our users is essential to customers in order to have the rust level needed to allow a VNC connection into their test environment.

We would love to have your input on these plans and directions.

Thanks
Ken, Mike, and Tony