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 nondevelopers, let alone maintaining and modifying existing tests. The most common method for modifying Selenium tests is thus to rerecord 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 nondevelopers to understand Selenium tests (for example, Cucumber or Watir), but in order for nondevelopers 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 nondeveloper 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 onsite 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 cloudbased solution for test management and for manual and automated testing of web applications. Its builtin 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: 4123915555 Email: [email protected] www.te52.com © 2014 Tellurium Why Selenium Isn’t Really Free
© Copyright 2024 Paperzz