Why Selenium Isn`t Really Free

Why Selenium Isn’t Really Free
February 2014
Why Selenium Isn’t Really
Free
Why the world loves Selenium
Google uses it. Facebook uses it. Salesforce uses it. Any major online company you can think of
has most likely used it at one time.
In case you aren’t familiar with it, Selenium is a free piece of software that can “watch” you perform
actions in a web browser, save your steps, and then allow you to “replay” those steps automatically
at a later time. The tool isn’t just free; Selenium’s code is open sourced, which means that you can
download it and, with a little software development wizardry, enhance it to make it do whatever
you’d like it to.
Selenium’s free open sourced code and automation capabilities make the tool an attractive option
for testing web applications. Rather than spending time and effort on a regular basis manually
testing pieces of an application’s functionality — Is the search feature working? Can people fill out
the registration form? — you can create Selenium tests for that functionality and run your
automated tests on a regular basis instead. Therefore, Selenium has the potential to save you time
and money and to make processes like testing more efficient.
Why Selenium isn’t “free”
Selenium itself is a free, open sourced piece of software. But too often people think that means that
the cost of using Selenium for automated testing is “free.” That’s not the case.
Selenium on its own can’t manage all of the tests that you create. It also doesn’t allow you to easily
modify your tests, share your tests with other people, or even run more than one test at a time.
These are all features that modern day testers require in order to do their jobs efficiently and
effectively.
So what will it REALLY cost me?
Let’s look at each of the deficiencies mentioned above and determine what their potential cost could
mean to your testing efforts.
Managing your tests
Selenium allows you to create one test at a time and save each test as an
individual file (for example, like you’d save a document on your desktop). Now, you
can organize all of those tests into folders on your own, but what if you want to add
a description to each test, or flag a test so you can easily find it later? It’s not
possible to do either of those things with “out of the box” Selenium. That level of
management would require that you pay a developer to create a user interface for
you where you can manage and organize your tests properly.
Why Selenium Isn’t Really
Free
Modifying your tests
Selenium tests are written in “Selenese,” a development language that performs the
actions in the tests. This language barrier makes reading and understanding the
tests difficult for non­developers, let alone maintaining and modifying existing tests.
The most common method for modifying Selenium tests is thus to re­record them,
which is both a waste of time and money.
There a number of other open source tools that are meant to make it easier for
non­developers to understand Selenium tests (for example, Cucumber or Watir),
but in order for non­developers to be able to use these tools, developers must still
be involved. Without an intuitive user interface, tests must be run from the
command line, and developers must spend time building a library of commands to
be used in tests.
Sharing your tests and results with other people
If you want to give your Selenium tests and results to a non­developer and have
that person understand what they mean, you’re out of luck. Quantifying how well
your Selenium tests performed requires that you review each result and put its
details into a spreadsheet or some other shareable and readable format. This type
of manual review and analysis can add days (if not weeks) to your testing process,
by which time the testing data you intend to share is likely out of date.
Running more than one test at a time
Since Selenium is an installed tool, it runs on your computer, typically while you
watch it run. This setup has two major drawbacks:
1.
2.
If you have only one computer monitor, you can’t do anything else while
your test is running, which defeats the purpose of automating the test in
the first place.
When installed locally, Selenium can only run one test at a time.
Therefore, if you have 100 tests that you’d like to run, you have to wait until
each test finishes before the next one can begin.
Now, there are ways to work around these complications. You can purchase
additional computers or servers so that you can run multiple tests simultaneously.
You thus need to pay someone with a background in network installations to
connect all of your machines so you can access all of them at once.
You can also use a cloud service (such as Sauce Labs) to run your tests in the
cloud instead of on your physical machine and pay for that service based on how
much time you spend running tests. However, this option quickly becomes costly,
especially if you’re constantly running tests.
Why Selenium Isn’t Really
Free
What am I supposed to do?
If you’re unsure about how to make Selenium work for you, realize that you’re not alone. Although
Google, Facebook, and Salesforce use Selenium, they’ve invested heavily in developers, hardware,
and testing teams that make it work well for them. Most companies don’t have the capital to make
an investment of that magnitude.
There are a number of contractors you can hire to help you set up the infrastructure you need to
write and run Selenium tests. Unfortunately many of these installations require six months or more
of on­site work and fees and still don’t necessarily allow you to manage or modify your tests, share
your tests and results with others, or run multiple tests simultaneously.
Ultimately our own frustration with Selenium’s limitations lead us to create Tellurium
(www.te52.com). It provides all of the features that are desperately lacking from Selenium, and then
some. There’s nothing to install, and you can try it for free for 30 days. If Tellurium doesn’t fulfill all
of your automated testing needs, there’s no commitment to use it after your trial expires.
Now that’s truly a “free” proposition.
About Us
About Tellurium
Tellurium (www.te52.com) is an innovative cloud­based solution for test management and
for manual and automated testing of web applications. Its built­in collaboration tools allow
teams of any size to test more efficiently, thoroughly, and affordably using any OS or
device — anytime, anywhere. With its patent pending “Plain English” scripting language,
support for multiple testing methodologies, collaborative design, and advanced reporting
capabilities, Tellurium helps users across industries ensure website functionality and
quality throughout the development lifecycle.
Tellurium
Phone: 412­391­5555
Email: [email protected]
www.te52.com
© 2014 Tellurium
Why Selenium Isn’t Really
Free