Skip to main content

Broad comparison among QTP and Selenium





Sr.
What HP QTP has
What Selenium has
1
QTP is ideally suited for browser based testing
Selenium too can very well do browser based testing
2
QTP is licensed software & requires license costs that are quite a bit.
Selenium is an open source tool that doesn’t cost anything
3
QTP is quite easy to use. It is quite easy to edit the script, parameterize, navigate, playback & validate the results.
For using Selenium one needs to have programming skills.
4
QTP is quite easy to learn in a short time.
Selenium needs quite a bit of expertise compared to QTP.
5
QTP offers great benefit of the support for Business Process Testing.
Selenium users don’t enjoy such benefits
6
QTP comes powered with several add-ins by which user can comfortably work with Web, Windows, Java, dotNet applications simultaneously.
Selenium users don’t enjoy such facility.
7
QTP seamlessly integrates with QC and has excellent ability to automate non-web applications.
Selenium is an excellent tool for purely web-based applications, especially when you don’t need QC.
8
QTP works very well with database applications better than Selenium.
With Selenium one needs to exert hard to do the same job.
9
It is difficult to deploy smoke tests for web applications using QTP especially with Windows7.
With Selenium these tasks can be easily accomplished.
10
QTP uses VBscript as the only scripting language
Selenium provides a test domain specific language (DSL) to write tests in many popular programming languages, in addition to scripting with VB script
11
QTP users find scripts written in VBscript more flexible & easy to manipulate & as such tool tends to be cost effective due to the availability of a full fledged support.
Selenium users feel that the tool tends to be expensive due to lack of support & necessity of rewriting its scripts quite often
12
Resource wise it is quite easy to find engineers having expertise on QTP
Selenium Automation Engineer are bit scarce.
13
With QTP we can easily generate most comprehensive reports due to the availability of an efficient online help
Selenium users don’t enjoy such luxury as enjoyed by QTP users
14
Using a QTP framework needs less skills & everyone from a beginner to an expert can contribute in test creation to maintenance
Skill level expected in a Selenium Automation Engineer are a bit higher compared to QTP Automation Engineer
15
QTP users don’t enjoy a freedom of scripting language & IDE like their counterparts using Selenium.
For web based applications, development with Selenium is a wonderful experience since developer gets two benefits like;

1) Scripting language of own choice

2) IDE of Own choice.

16
QTP is one of the best automation testing tools due to its unique features like Object Repositories, Object identification, Smart Identification etc in addition to its unmatched strength in database testing.
Selenium certainly lacks such features packed in QTP.

Conclusion:

Our objective had not been to favor one at the cost of the second. It is a matter of convenience for the testers & programmers to select a tool that suits their requirements best.

Lastly both these tools have their own advantages & shortcomings, while it all depends upon the users who truly know how to exploit them to their best advantage.

Source: http://www.softwaretestinggenius.com

Comments

Popular posts from this blog

Convert JSON to XML using QTP/UFT/VBScript

Sample Code : Dim strPage,strJSON,objIE strPage = "C:\Jay\JLoader.html" Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True objIE.Navigate2 strPage While objIE.Busy : Wend strJSON = "{""FirstName"":""Jay"", ""LastName"":""Krishna""}" Set objWin = objIE.document.parentWindow objWin.execScript "var jsonStr2XML = function(strJSON) { return json2xml(JSON.parse(strJSON));};" Msgbox  oWin.jsonStr2XML(strJSON) objIE.Quit In Detail: Converting The most popular data interchange format JSON(JavaScript Object Notation) to XML using QTP/UFT. Parsing JSON in UFT could be a challenge so we will use JavaScript in UFT to make it perfect. SO We need :              Java Script API  - To Convert JSON to XML                         JavaScript Files :                         http://goessner.net/download/prj/jsonxml/j

Read Outlook mail attachment and Body using Vb Script or QTP

Set olApp = CreateObject("Outlook.Application") Set olns = olApp.GetNameSpace("MAPI") Set ObjFolder = olns.GetDefaultFolder(6) j = 0 For each item1 in ObjFolder.Items        iattachCnt = item1.Attachments.Count     Print "Attachments Count: " & iattachCnt     For i = 1 to iattachCnt         Print "FileName :    " & item1.Attachments(i).FileName         Print "Display Name:   " & item1.Attachments(i).DisplayName         Print "Size: " & item1.Attachments(i).Size     Next     Print " Body : " & item1.body     Print "--------------------------------------Mail Num - " & j & " -----------------------------------------------"     j = j+1    Next

Excel Sorting By Rows and Columns

Excel Sorting By Row: Const xlAscending = 1 Const xlNo = 2 Const xlSortRows = 2 Set objExcel = CreateObject(“Excel.Application”) objExcel.Visible = True Set objWorkbook = objExcel.Workbooks.Open(“C:\Jay\Docs1.xls”) Set objWorksheet = objWorkbook.Worksheets(1) objWorksheet.Cells(1,1).activate Set objRange = objExcel.ActiveCell.EntireRow objRange.Sort objRange, xlAscending, , , , , , xlNo, , , xlSortRows set objExcel=nothing Excel Sorting By Column : Const xlAscending = 1′represents the sorting type 1 for Ascending 2 for Desc Const xlYes = 1 Set objExcel = CreateObject(“Excel.Application”)’Create the excel object objExcel.Visible = True’Make excel visible Set objWorkbook = _ objExcel.Workbooks.Open(“C:\Jay\Docs1.xls”)’Open the document Set objWorksheet = objWorkbook.Worksheets(1)’select the sheet based on the index .. 1,2 ,3 … Set objRange = objWorksheet.UsedRange’which select the range of the cells has some data other than blank Set objRange2 = objExcel.Range

How to Read or Select Context Menu or Right Click Menu using QTP.

Select The Item in Right Click Menu or Context Menu: Window("sampleWindow").WinMenu("MenuObjType:=1).Select"File;New" Here MenuObjtype can be 1 r 2 r 3 .......n Check wether the Item is Exist or Not: If Window("sampleWindow").WinMenu("MenuObjType:=1).GetItemProperty("1","Exist") Then   Msgbox"Exist" Else  Msgbox"Does Not Exist" End If                                         Or If Window("sampleWindow").WinMenu("MenuObjType:=1).GetItemProperty("File","Exist") Then   Msgbox"Exist" Else  Msgbox"Does Not Exist" End If Get the Items in Context Menu: For i = 1 to 10 Print  Window("sampleWindow").WinMenu("MenuObjType:=" & i).GetItemProperty("1","Label") Then Next

How to Download a file using VbScript

Following is the code to download a file using Vbscript, without using QTP This code uses the HTMLDom and URLDownloadToFile method from urlmon API. Since VBScript does support calling Native API methods directly, here I am using  Excel macro to declare a function for the urlmon API and running the macro by Excel API from VBscript Step1: Create a new excel and open the visual basic editor, Insert Module and paste the following code the Module, save the excel file Private Declare Function URLDownloadToFile Lib “urlmon” Alias _                                            “URLDownloadToFileA” ( _                                            ByVal pCaller As Long, ByVal szURL As String, _                                            ByVal szFileName As String, _                                            ByVal dwReserved As Long, _                                            ByVal lpfnCB As Long) As Long Sub FileSave(strUrl, Des)     r = URLDownloadToFile(0, strUrl, Des, 0, a)