Tasty, tasty testing

Robots in the cloud: how Sauce Labs are shaping the future of software testing

Elliot Bentley
bitbeambot

We speak to Jason Huggins, father of the Selenium project (and Angry Birds-playing robots) as his company unveils a new suite of cloud-based testing tools for mobile web apps.

Even if you’re not remotely interested in automated web app
testing, you may still have heard of Jason Huggins. His Angry
Birds-playing robot became a viral sensation last year, on
Popular Science
, Mashable,

CNET
and
NBC News
, with the idea of a computer-controlled artificial
finger flinging birds delighting millions.

What Huggins is professionally known best for, though, is Selenium, the open-source automation
tool for testing web apps that he initially breathed life
into.

Having previously worked at Google and ThoughtWorks, in 2008
Huggins left to start his own business, Sauce Labs. His company uses Selenium
“in the cloud” to provide automated testing of web apps on a range
of virtualised browsers, replacing the need for an expensive QA
team, and is now used by big-name customers including Etsy, BBC and
Eventbrite.

“The cool thing is that testing is one of those killer apps for
cloud computing,” he says. “Where you have a very large amount of
computing that you want to do, and you need to get it done in a
very short amount of time.”

No frames :(

Huggins’ BitBeamBot playing Angry
Birds.

Today, the company are unveiling
an expansion of their tools to mobile platforms, with support for
iOS and Android as well as OS X – joining their existing suite of
Windows- and Linux-based browsers. It’s being powered by the
closing of a $3m Series B funding round, led by Triage Ventures,
with Salesforce.com joining as an investor.

And it’s not just commercial news being announced today: there’s
some open source goodness too. Sauce Labs’ tech is built on the KVM
(Kernel-based Virtual Machine), but they found existing OS X
support patches lacking and so reached out to KVM project
contributors Alexander Graf and René Rebe. Their patch, allowing OS
X (and by extension iOS) to run on the KVM, will be available for
incorporation into the project if the community wishes to.

Though Huggins says he isn’t ready to reveal any future product
announcements, he describes today’s news as “the beginning of a
long path towards rolling out more and more mobile
solutions”.

The future plans Huggins is willing to discuss, however, is that of
automated testing of mobile apps not on virtual machines, but using
custom-built robots called BitBeamBots – yes, like the one he
designed to play Angry Birds.

“So at the beginning I was just looking for a fun, silly project to
work on, but now it’s been about a year since I created this first
robot and I’ve been thinking: is this really a silly thing, and
just a curiosity? Is there any utility in it? You look at a lot of
new technologies, and they’re just seen as silly toys – even stuff
like the telephone or the phonograph, and even the inventors didn’t
know where it was going to go.

“One of the things I’ve learnt in the past year is that it’s
probably not that silly. A lot of testers have come up to me and
said, ‘I need that, I want that’.”

Mobile testing is still in its infancy, he says, and testing tools
are still far from complete. Virtualisation, which may be an
acceptable option for desktop apps, doesn’t appear to be the
optimum solution.

“Very large internet companies have actually started to – even
though they use Selenium for their desktop web testing, testing on
Chrome, Firefox, IE – on mobile, they’ve started to do more manual
testing, just because the maturity of the automated tools are not
there.

“So the aim of this project going forward is to find out what it is
about manual testing, and put that into the robot. Basically, make
the robot more like what the human does when they do the manual
testing.”

He cites the example of using cameras hooked up to button-detection
software, which is “easier than spending a year and getting a
really sophisticated and under-the-hood testing API”. Crucially,
these also depend on the cooperation of mobile OS vendors.

“So me creating a robot that can look at the screen and click
buttons – that gets you that kind of best of both worlds, where
it’s kind of like what you get out of manual testing, but lets you
automate it.”

It’s clearly an area Huggins is incredibly passionate about – but
for now it’s still very much in an experimental phase, years from
production. For now, it’s all about virtualisation.

Oh, and one more thing. Huggins has done his homework and, knowing
how we at JAXenter feel about Java, takes a moment to affirm his
company’s support for the language and platform.

“Selenium does obviously support Java, and Sauce Labs of course
supports Java,” he says. “So Java developers, I want to point out –
all the stuff that we’re announcing, the iPad, the iPhone, the
Android simulator, all that you can access through Java.”

Author
Comments
comments powered by Disqus