| By Hovhannes Avoyan | Article Rating: |
|
| December 6, 2012 12:30 PM EST | Reads: |
2,168 |
Web Browser Automation is a process where certain steps in the web browser are performed repetitively to ensure the correct operation of the web application’s functionality. It may be applied for QA testing in the development process and for control over Information System accessibility and performance during implementation. The second becomes more and more important since current market trends indicate that just having a good service is not enough; the service should also be highly accessible and effective. With Web Browser Automation Tools it is possible to check accessibility and performance by periodically running some transaction scenarios for certain services.
There are many Web Browser Automation Tools, both paid and free / open source. The main purpose of these tools is to record a specific transaction scenario for a browser, play it back by injecting JavaScript into web pages and then to provide the corresponding results. The tools vary in many characteristics: OS platform support, supported programming languages, SSL support, whether it uses a real web browser or simulates the real browser’s behavior, etc. Below are presented a relative comparison of some popular free/open source tool’s characteristics.
| Tool | Simulation | Supported Browsers | Supported Languages | Test Recorder |
| Selenium | No | Firefox, IE(partially), Opera (partially), Chrome (partially)[1] | C#, Java, Perl, PHP, Python, Ruby | Yes |
| Watij | No | On Windows only IE, On Linux only Firefox, On Mac only Safari |
java | No |
| Windmill | No | Python and JavaScript | Python, JavaScript, Ruby | Yes |
| Watir | No | On Windows only IE, Watir Web Driver -IE/FF/Chrome/Safari | Ruby | Yes |
| Watin | No | IE, Chrome, Firefox | .net platform languages | Yes |
| Sahi | No | IE, Safari, Firefox, Chrome, Opera | Java, Javascript | Yes |
| Canoo WebTest | Yes | No need | Javascript, Python | Yes |
| CasperJS | Yes | No need | Javascript | Yes |
Selenium’s different products are compatible, at least partially, with a variety of different browsers, but all of them are fully compatible with Firefox.
To test the tools, we used 45 transaction instances with the same scenario of 7 steps (navigation, clicks, login, logout, etc.). A single transaction execution period was 5 minutes and the overall test duration was 20 minutes. Each tool was tested 2 times: first by running with 1 thread and then with 5 threads. The test results are shown below:
| Tool | Num. of tests | Browsers | App run duration | Num. of threads | Test frequency (min) | Transaction step count | Num. of tests running during 20 mins | Avg. exec time for 1 test (sec) |
| Watij | 45 | IE | 20 min | 5 | 5 | 7 | 34 | 29.7 |
| Watij | 45 | IE | 20 min | 1 | 5 | 7 | 32 | 33.2 |
| Selenium | 45 | IE | 20 min | 5 | 5 | 7 | - | - |
| Selenium | 45 | IE | 20 min | 1 | 5 | 7 | 68 | 17.6 |
| CasperJS | 45 | NA | 20 min | 5 | 5 | 7 | 204 | 17.1 |
| CasperJS | 45 | NA | 20 min | 1 | 5 | 7 | 68 | 17.2 |
As you can see, the test results for Selenium with IE browser are absent. The problem was that the Selenium couldn’t run several transaction tests at the same time. Instead of opening several browser instances, it mixes all of them in one browser instance. However, it doesn’t have this kind of problem when working with Firefox or Chrome. For example, running the Selenium with the same conditions but on the Firefox browser, the following results were obtained: average execution time of 1 test is 15.1 seconds, the number of tests run during 20 minutes is 50. The average running time of one transaction test for these tools is not greater than that of the others. The other 2 tools spent a substantial amount of overhead time communicating with the server, starting browser instances, etc.
Examining the performance of selected Web Automation Tools shows that they differ not only in terms of functionality, but that they also behave differently in different conditions (depending on OS, browser type, multithread or singlethread). The main limitation we noticed with Selenium is that it’s primarily designed for Firefox. All of its products support Firefox, and as we have already seen it has problems working with IE. On the other hand the Casperjs is headless and is Webkit based, so it will not work on IE only sites, for example. Meanwhile, Watij works with only one unique browser type per OS (IE on Windows, Firefox on Linux and Safari on Mac). Working with different transaction scenarios simultaneously is much more productive with the headless tools since they consume less time.
Read the original blog entry...
Published December 6, 2012 Reads 2,168
Copyright © 2012 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Hovhannes Avoyan
Hovhannes Avoyan is the CEO of Monitis, Inc., a provider of on-demand systems management and monitoring software to 50,000 users spanning small businesses and Fortune 500 companies.
Prior to Monitis, he served as General Manager and Director of Development at prominent web portal Lycos Europe, where he grew the Lycos Armenia group from 30 people to over 200, making it the company's largest development center. Prior to Lycos, Avoyan was VP of Technology at Brience, Inc. (based in San Francisco and acquired by Syniverse), which delivered mobile internet content solutions to companies like Cisco, Ingram Micro, Washington Mutual, Wyndham Hotels , T-Mobile , and CNN. Prior to that, he served as the founder and CEO of CEDIT ltd., which was acquired by Brience. A 24 year veteran of the software industry, he also runs Sourcio cjsc, an IT consulting company and startup incubator specializing in web 2.0 products and open-source technologies.
Hovhannes is a senior lecturer at the American Univeristy of Armenia and has been a visiting lecturer at San Francisco State University. He is a graduate of Bertelsmann University.
- Cloud People: A Who's Who of Cloud Computing
- Windows Azure IaaS Reaches General Availability
- Portable Experimenter’s Platform, Powered by Raspberry Pi
- Session Topics: 12th Cloud Expo / Cloud Expo New York
- Ubuntu-based Open Source Linux Mint Tests KDE Version
- AMAX Launches StorMax(TM) CFS, powered by IBM(R) General Parallel File System(TM) (GPFS(TM))
- NIST to Sponsor FFRDC Widespread Adoption of Integrated CyberSecurity
- Red Hat Hires Azure Guy to Run Virtualization
- Project Floodlight Grows to the World’s Largest SDN Ecosystem; Global Users, Contributors and Partners Innovating Using Open Source SDN
- HotLink Debuts Amazon EC2 Plug-in for Microsoft SCVMM with Latest Release of HotLink Hybrid Express
- Cloud Business Solutions, Social Media, and Platform Systems of Engagement Market Shares, Strategies, and Forecasts, Worldwide, 2013 to 2019
- Rackspace and Red Hat Celebrate Victory over Troll
- Cloud People: A Who's Who of Cloud Computing
- Windows Azure IaaS Reaches General Availability
- Portable Experimenter’s Platform, Powered by Raspberry Pi
- SUSE Receives Common Criteria Security Certifications
- Session Topics: 12th Cloud Expo / Cloud Expo New York
- Red Hat Unveils Big Data and Open Hybrid Cloud Direction
- Granular Enforcement of Access to File Systems Featured in Latest Release of FoxT ServerControl
- Ubuntu-based Open Source Linux Mint Tests KDE Version
- Red Hat Spin-Off Simplifies Orchestration
- AMAX Launches StorMax(TM) CFS, powered by IBM(R) General Parallel File System(TM) (GPFS(TM))
- NIST to Sponsor FFRDC Widespread Adoption of Integrated CyberSecurity
- Red Hat Hires Azure Guy to Run Virtualization
- The i-Technology Right Stuff
- After Ubuntu, Windows Looks Increasingly Bad, Increasingly Archaic, Increasingly Unfriendly
- Linux.SYS-CON.com Exclusive: Linus Discloses *Real* Fathers of Linux
- A Closer Look at Damn Small Linux
- Linus' Top Ten SCO Barbs
- SCO CEO Posts Open Letter to the Open Source Community
- Netscape Co-Founder's 12 Reasons for Growth of Open Source
- Where Are RIA Technologies Headed in 2008?
- *POINT - COUNTERPOINT SPECIAL* What's Wrong with the Open Source Community?
- Introducing "Cooperative Linux" - Linux for Windows, No Less
- Linux.SYS-CON.com Exclusive: What Would UserLinux Look Like?
- Why Recovering a Deleted Ext3 File Is Difficult . . .




















