Search This Blog

Monday, April 25, 2016

Mobile Tool Comparision Matrix

Mobile Tool Comparision Matrix
Criteria SeeTest Jamo Solutions UFT+PerfectoMobile Eggplant Appium Selenium WebDriver Ranorex Xcode UIA
Native Object Recognition Yes Yes Yes No Yes No Yes Yes
Image Based Recognition Yes No Yes Yes No No No No
OCR Text Based Recognition Yes No Yes Yes No No No No
Web Object Recognition Yes No Yes No Yes Yes No Yes (Simulator)
Object Spy Yes Yes Yes Yes Yes No No Yes (Simulator)
Browser Support                
    Safari Browser Yes Yes Yes Yes (Limited) Yes Yes No Yes
    Firefox Browser Yes Yes   Yes (Limited) No No No No
    Chrome Browser Yes Yes   Yes (Limited) No No No No
    Android Browser Yes Yes Yes Yes (Limited) Yes Yes No No
    Opera Browser Yes Yes   Yes (Limited) No No No No
    Internet Explorer Browser Yes Yes Yes Yes (Limited) No No No No
Hybrid Application Support Yes Yes Yes Yes (Limited) Yes No No No
Record and Playback capability Yes Yes Yes Yes No No Yes Yes (Limited)
Device OS Support                
   Android <4 .1="" td=""> Yes Yes Yes Yes No Yes Yes No
Android >=4.1 Yes Yes Yes Yes Yes Yes Yes No
iOS <7 .0="" td=""> Yes Yes Yes Yes Yes Yes Yes (Limited) Yes
iOS 7.0 Yes (Limited) Yes Yes (Limited) Yes Yes (Limited) Yes Yes Yes
Windows 6.5 Yes Yes Yes Yes No No No No
Windows 7.0 Yes Yes Yes Yes No No No No
Windows 8.0 Yes Yes Yes Yes No No No No
Symbian Yes No Yes Yes No No No No
Blackberry RIM Yes Yes Yes Yes No No No No
Orientation Support Yes Yes Yes Yes Yes No Yes Yes
Hardware Control support Yes (Limited) Yes (Limited) Yes (Limited) No Yes (Limited) No No Yes
Gesture support(Swipe, Pinch, Scroll) Yes (Limited) Yes (Limited) Yes (Limited) No Yes (Limited) Yes (Limited) Yes Yes
Cloud Based Solution Yes No Yes No Yes** Yes** No No
Interrupt Testing Yes Yes Limited No No No No Yes
Multi Language Support Yes Yes No No Yes Yes Yes (Limited) No
Functional Tool Integration Support Yes Yes Yes (Limited) No Yes (Limited) No Yes (Limited) No
App Instrumentation requirement No No No No No No Yes Yes
Capture Device Monitors Yes (Limited) Yes No No No No No Yes
Access to Device Logs Yes (Limited) Yes (Limited) No No No No No Yes
Support to PC OS                
Windows XP and above Yes Yes Yes Yes Yes Yes Yes No
Mac OSX No Yes No No Yes Yes No Yes
Linux No Yes No No Yes Yes No Yes
Parallel Execution on Multiple Devices Yes* No No No Yes Yes Yes Yes
Remote Device Execution Yes* Yes Yes No Yes Yes No No
Real Device Execution Yes Yes No Yes Yes Yes Yes Yes
Support for CI Yes No No No No Yes Yes No

Total Score - Yes 
36 31 26 23 21 17 15 18
Legend
Yes* - Additional Licence Cost
Yes** - External Vendors Service
Yes (Limited) - Limited Support

Thursday, July 9, 2015

Tool Comparision Matrix - QTP/UFT, Selenium, TestComplete

Tool Comparision Matrix



Feature QTP/UFT TestComplete Selenium
Language Support VB Script VBScript,
JSScript, DelphiScript,
C++Script and C#Script
Java, C#, Ruby, Python, Perl PHP , Javascript
Application Support A client server application Only (Web+Windows). It also supports add-ons, but user needs to purchase license for them. All of this included right out of the box there are no plug-ins or add-ons to buy. You can install Test Complete and immediately create any test against any application. Web Only, It will not support window apps
Cross Browser Testing Yes Yes Google Chrome , Internet Explorer , Firefox , Opera , Html Unit
API Testing Yes Yes Integrate with external tools
Web Service Testing Yes Yes No
Database Testing Yes Yes Yes
Web Load/Performance Testing No, Loadrunner separate tool Yes No
Mobile (Phones & Tablets) support Different commercial product i.e. HP UFT Mobile (formerly known as MobileCloud for QTP) Yes (ios,Android,Blackberry..) Selenium + Appium (blackberry is not possible)
Test Management No, need QC/ALM Yes, Built-in (QA Complete) No
Jira Integration No Yes Yes
Manual Testing via QC/ALM only Yes No
Separate Test Execution Module No, Must use QTP full install (HP is planning to release LeanFT, UFT 12.5 in month of Jul 2015 – there we can have separate test execution engine for less price) Yes – 399 $ Test Execute Float License No
Version Control Integration via QC/ALM only Yes No
Unit Testing Integration via QC/ALM only DUnit, JUnit, NUnit, MSTest Yes
Framework Supports multiple frameworks like Keyword Driven, hybrid driven, modular driven and BPT (ALM) Integrate with QA Complete,we can create keyword driven, data driven frameworks etc. Selenium + Eclipse + Maven / ANT + Jenkins / Hudson & its plugins / Cruise Control + TestNG + SVN
Object Recognition / Storage Inbuilt Object Repository NameSpace mapping UI Maps and different object location strategy such as -XPath Element ID or attribute DOM
Image based Tests Easily possible Yes Possible but not easy
Reports Quality Center has in-built awesome dashboards Yes Integration with Jenkins can give good reporting & dashboard capabilities
Software Cost Licensed and very
Expensive, Ten user license costs approx.
60L (8000 $ - 15000 $ approx varies from country to country)
Node Locked – Enterprise – 1999 $, Floating Enterprise – 4499$, Node locked Standard – 999$, Floating Standard – 2999$ It is open source. So, there's no licensing or renewal cost for this tool. It's free of cost.
Coding Experience of Engineer Not Much Programming background is highly recommended Should be very good along with technical capabilities of integrating different pieces of framework
Script Creation Time Less Less High
Hardware resource (CPU + RAM) consumption during script execution High Moderate Low
Product Support Dedicate HP support along with support forums Yes Open Source Community

Friday, July 3, 2015

Accessing Web Objects Using DOM Methods

ElementFromPoint Method

 
x=Browser("name:=Google").Page("title:=Google").WebEdit("name:=q").GetROProperty("x")  
y=Browser("name:=Google").Page("title:=Google").WebEdit("name:=q").GetROProperty("y")  
Browser("name:=Google").Page("title:=Google").Object.elementFromPoint(x,y).Value="QTP" 'Sets value in web edit using coordinates  

GetElementsByTagName Method

Set obj= Browser("name:=Google").Page("title:=Google").Object.getElementsByTagName("INPUT")  
inCount=obj.Length-1  
For i=0 to inCount  
   If obj(i).Name="q" and obj(i).Type="text" Then  
    Browser("name:=Google").Page("title:=Google").Object.getElementsByTagName("INPUT")(i).Value="QTP"        'Sets   value in web edit using tag name.  
   End If  
Next  

GetElementsByName Method:

Set obj= Browser("name:=Google").Page("title:=Google").Object.getElementsByTagName("INPUT")  
inCount=obj.Length-1  
For i=0 to inCount  
  If obj(i).Name="q" and obj(i).Type="text" Then  
   Browser("name:=Google").Page("title:=Google").Object.getElementsByName(obj(i).Name)(0).Value="QTP" 'Sets  value in web edit using element's name.  
   End If  
Next  

GetElementByID Method: 

1.Browser("name:=Google").Page("title:=Google").Object.getElementByID("XXXX").Value="QTP" 'Sets value in web edit using element's ID  

Verifying Child Object Existence Using Contains Method: 

1.Set objWebEdit=Browser("name:=Google").Page("title:=Google").WebEdit("name:=q").Object  
2.msgbox Browser("name:=Google").Page("title:=Google").webTable("index:=0").Object.contains(objWebEdit)'If the webtable contains the specified child object, then Contains method will return True. 

Mouse Hover Register User Function

'******************************************************
Function Hover(obj)
  x = obj.getroproperty("abs_x") + (obj.getroproperty("width"))/2
  y = obj.getroproperty("abs_y") + (obj.getroproperty("height"))/2
  Set devicereplay = CreateObject("Mercury.devicereplay")
  devicereplay.MouseMove x, y
  Set devicereplay = Nothing
  Wait 1
End Function

'******************************************************
Registeruserfunc "Link", "Hover", "Hover" 

'******************************************************

List of features & enhancements to UFT 12.5

Here below are the list of features & enhancements to UFT 12.5 :
ØCross-Browser Testing:
                HP enhanced chrome recording ability and also we can use one script that works against IE, Firefox, Safari, Chrome
                Provided an option to select browser to run
                Receive single report that shows the results of all the test executions against all the different browsers
ØUFT Runtime Engine:
                This is a separate installation piece now, which allows users to easily deploy test scripts to other machines (includes new license type)
ØUsability:
                Light-weight  and HTML based report feature. Now we can share results without needing to have results viewer installed
ØIntegration & Technologies:
                HP has added functionality that allows users to integrate with source-control tools like Git and Subversion
ØFlexible Consumption: UFT License + Lean FT License + UFT Runtime Engine License
                When you buy the UFT bundle you’re getting both the UFT and LeanFT licenses. (This applies if you already have an existing Unified Functional Testing license.) We can decide which flavor we want to       use to create test scripts. We can mix and match. We can also install both UFT and LeanFT on the same machine.
ØMobile:
                We can use the UFT SPY and highlight on mobile user interfaces. There is also a run mobile test option using UFT Jenkins plugin.