A plugin-free testing environment.
Traditional HTML 5 web testing tools force you to install browser plugins so you can record and/or execute tests. At first glance, this might not seem like a big deal but in today’s BYOD world, the problems associated with plugins are real and quite challenging to overcome.
The limitations of testing frameworks based on browser plugins.
To run tests with competing web testing tools, you must download, install and configure plugins for each browser you wish to test against. Let’s assume for a moment that you wish to test your HTML 5 application on IE9, IE10, Chrome, Opera and Safari. Before recording your first test, you must obtain and install the appropriate plugins/drivers on your computer. So far so good (let’s ignore the fact that installing all these plugins is a real pain-in-the-neck)…
Now, imagine for a moment that Microsoft, Google or Apple update their browser and your plugin fails to work properly (Those who’ve used web testing know that this reality is unavoidable…plugins can fail when new versions of a browser are released). At this point, your choices are limited – either you ignore the new browser or you wait for your tool vendor to create an updated plugin for you to use. When you finally obtain a properly working plugin from the vendor, you will of course need to repeat the installation process once again on all your test machines.
Other issues to consider when it comes to plugins:
- What happens when you have to test against 2 different versions of the same browser? Do you want to install a complete test environment on an entirely different machine (real or virtual)?
- What happens with non-standard browsers? For instance, Safari on the iPhone is not the same as WebView. Kindle’s browser is not the same as Chrome.
- What’s the future hold (Tizen Watch browser, Google Glass and Raspberry Pi) and how will your plugins fit in?
Do you really want to risk mission-critical apps and your QA processes to products that require plugins, with all their inherent limitations?
Escape from “plugin hell” forever, with TestCafe
We believe software that forces you to install and maintain a vast array of plugins is inherently flawed, as it places an unreasonable burden on you. If you’ve tried web testing tools in the past or are using one now, chances are you’ve already experienced these nightmares firsthand.
So, how is TestCafe different? It’s simple really. With TestCafe, you no longer worry about plugins. It simply works, out-of-the-box. No plugins to install and no plugins to configure. You won’t run into browser versioning issues and you can test on different versions of the same browser without the need to install a complete test environment. For instance, if you want to test against different versions of IE, you need only specify the browser on another computer/virtual machine/mobile device as a remote worker and then execute your test scripts. TestCafe makes testing painless and hassle free.
A test recorder that works with any browser: locally and on remote machines.
If you’ve read TestCafe Advantage #1, you already know the issues related to plugins. If you’ve used competing testing tools, you also know that test recorders are just plugins. Since we don’t want to repeat all the issues associated with plugins in this section, let us get to the point and tell you what you can do with TestCafe’s Test Recorder.
First, our test recorder works on any HTML 5 browser and does not require installation of plugins. It’s designed to make you and your team more productive and to help you get the job done faster than any other product of its kind on the market today.
A plugin free test recorder, however, is just the tip of the iceberg…
Let’s take a look at a common use-case scenario within an enterprise to help explain the profound difference between TestCafe and competing products.
A colleague contacts you and informs you that a user has encountered a problem and that the issue can be reproduced. With competing products, you are going to have to step in and deal with the matter first-hand. You are going to have to reproduce the issue yourself so you can both understand the problem and create regression tests for future use.
Though you can follow the same steps with TestCafe and record the test yourself, you don’t have to. Because of TestCafe’s remote test recording capabilities, you can instead provide your colleague a URL (to the TestCafe Control Panel on your machine) and tell them to record the steps necessary to reproduce the issue on his or her machine. No need to worry about complicated installations of a complete test environment: your co-worker can get to work and in seconds reproduce the issue for you.
The beauty of this is that you’ll get a new regression test with no work on your part.
And remember, with competing products, you are likely going to have to purchase a license for other users should you be willing to put up with all the hassles associated with plugins. With TestCafe, your co-worker won’t require a license.
Being more productive and saving money – what a 1-2 punch.
A powerful, concise and easy-to-learn API.
We’ve told you about plug-ins and test recording. Let’s now turn our attention to the ugly little secret of testing tools…the API. No matter how well designed a product is, how much it costs, how well it can visually record tests, at some point, you are going to have to interact with the tool by using its API and by extension, master the details of that API to get your job done.
The first thing to notice about TestCafe’s API when compared to other web testing tools is its simplicity.
Now compare our API to any of our competitors and judge for yourself. Which API is simpler, more intuitive, easier to understand, and most importantly the one you would like to use on a daily basis?
If you are like most, you want a straightforward API that does not require lots of time and resources to master, and if this is you, odds are TestCafe is the right choice for your testing needs.
By the way, don’t let the brevity of our API fool you. A concise API does not equal lack of functionality. You can do everything you need with TestCafe without the steep learning curve and without being forced to learn a complex API.
At this point you might be asking yourself how – how can TestCafe’s API be so simple yet so powerful? The answer is that TestCafe’s API is concise because tests are executed within the browser as common JS code, which means you already have full access to any standard JS/DOM API. Competing products do not have this capability and so they must write wrappers to call DOM API indirectly, via – you guessed it – their plugins and devices.
Oh and one more reason why our API is so straightforward: With TestCafe you do not need to write lots of boilerplate code to prepare your test environment (such as manually cleaning up cookies, waiting for xhr request and page load). It’s ALL automatic with TestCafe.
TestCafe Advantage #4
100% web based testing environment.
Unlike competing products, TestCafe does not pretend to be something it’s not. TestCafe is not built to test Windows client apps. It does not pretend to test native iOS apps. TestCafe was engineered from ground up to be a fully optimized web testing tool for web developers and QA engineers.
TestCafe carries no baggage and has no legacy code to restrict it from helping you test your web applications across all major HTML 5 browsers – on the desktop and on mobile devices such as the iPad or Android tablets.
Once you start using TestCafe within your organization, you’ll discover that the entire QA process – from writing, recording, editing and deleting test scripts to test execution and result analysis – can be managed within a browser both locally or on remote computers.
How important is the ability to test locally and on remote computers? We’ve already described how your colleagues can assist you to write regression tests without installing a testing environment but that’s just one example. Another is that with TestCafe (and our flexible licensing model), you can install a single instance of TestCafe on your server and access it from anywhere in the world and get your job done without wasting time on configuration or wasting money on overpriced remote server licenses.
Try it for yourself. We’ve installed TestCafe on our server and you can see how easy it is to run tests remotely without installing anything:
TestCafe Advantage #5
Easy-to-write and easy-to-understand test code.
QA engineers will tell you that test code is by its nature different than production code. The reason is simple: test code is “write once” and “reference again only when problems are encountered” code. As such, when an issue is discovered, testers need to quickly determine the cause and reproducible steps without wasting time analyzing what the test code is doing.
TestCafe tests are split into steps: with only a single test action and with descriptive language. The result is that QA engineers and developers alike can simply read the test code and get to the heart of the problem without wasting time on test code analysis. And of course, this degree of code clarity extends to our visual test record since it also automatically generates descriptions that are easy to understand.
The easiest way to understand the benefit of Advantage #5 is simply to try TestCafe, record a test script and view its output then compare it to other web testing tools. Odds are that our competitors will generate highly complex output with a mess of code and cycles. Take for instance the following test script code…Though you may not have written it, you’ll find that its purpose is instantly identifiable.