There are number of automation tools available in the market (both licensed and open source). But only few of them have left a strong mark in the test automation industry. HP UFT (QTP) and Selenium are considered as Pioneers in Test automation space. In this post we will discuss the differences, pros and cons in detail. Let us begin the war.
Unified Functional Testing formerly known as Quick Test Professional.
QTP is the most preferred automation tool in the commercial segment (license fee). The tool is user friendly and automates both desktop and Web-Based applications.
A desktop application means any software that can be installed on a single computer (laptop or a desktop). Notepad, media players, Calculator can be considered to be typical desktop applications. A Web-based application refers to any program that is accessed over an Internet using HTTP, rather than existing within a device. Web-based applications often run inside a Web browser. Facebook.com, flipkart.com etc.
- QTP/UFT is UI + Backend Services test automation tool.
- QTP was earlier developed by Mercury, later acquired by HP in 2006.
- QTP is a desktop based application.
Advantages / Pros:
- VB script is used in UFT which is easy when compared with Java.
- UFT simplifies test creation and maintenance with keyword and drag-and-drop design approaches.
- Power packed with various features and Add ons.
- UFT scripts are recorded in vbscript and can be enhanced using the tool itself since UFT is a fully functional vbscript IDE.
- UFT is a complete end-to-end software test automation solution that includes a built-in Object Repository (to capture and organize test objects), and a built-in data table interface (for test data management).
- Standalone tool which can be integrated with HP QC/ALM.
- License is costly which depends on the type of package selected.
- The scripting time is less, but the execution time is relatively higher as it takes the entire load on CPU & RAM. Also, it is limited to windows environment and limited number of browsers.
- Cannot run multiple threads/instances – For example the Grid support available in Selenium, where we can run multiple instances of the application on different browsers at the same time.
- Separate costs for addins – Java, Oracle, SAP, .Net, Seibel, PeopleSoft etc.
Selenium is a software testing framework for web applications, which has the open source edge and supports a variety of languages that include Java, Python, C#, Ruby etc. At present this is the most powerful Open Source Automation tool available. It is more suited for the agile methodology of coding and testing.
Selenium (Se) as a chemical element acts against the harmfulness of Mercury.
- Selenium is a Web browser automation API.
- Open source project with 108+ contributors.
- Selenium has become one of the preferred choice for Web and mobile automation.
- Option to Choose Programming Language as Selenium supports many languages such as Java, C#, ruby, python.
- One of the best tools for web-based automation and supports all browsers such as IE, FF, Chrome, Safari etc.
- Supports Multiple Testing Frameworks : Being open source, Selenium can integrate with just about anything to give you a robust framework such as Maven or Ant for source code compilation, Test NG to drive tests (unit or functional or integration).
- Cost is the biggest advantage as it is a freeware.
- Selenium supports web testing, record and playback functionality and allows users to create custom code if necessary.
- Same Test Script can run on Multiple Web Browsers: allows testers to write the test script once, and run it on multiple browsers to test the web application. The feature allows developers to test complex web application without increasing the test cycles.
- Expertise Required in a Particular Programming Language.
- Additional Tools Required for Generating Reports.
- It’s an open source tool, so in case of any technical issues you need to rely on the selenium community forums to get your issue resolved.
- Does not support desktop based applications.
This is the most difficult question to answer, When tasked with tool selection, it is important to take into Consideration various other factors than the price. Although, licensing is free for selenium, it does not mean its cheaper. It’s like assembled PC (selenium) and Branded PC (UFT/QTP). Assembling requires each and every component to be taken care of, in order build an entire system. Whereas, Branded comes with ready to use facility, we only need to customize as per the requirement.
Current Trend is with the Open source solutions which reduces the overall production costs. but, the commercial tools are better choices for specific situations. Hence, the Decision is well left in the hands of organisations to decide. The war continues……