qtp/uft vs. selenium

Click here to load reader

Post on 15-Jul-2015

7.159 views

Category:

Technology

2 download

Embed Size (px)

TRANSCRIPT

  • QTP to Selenium Migration

    By Tarun Lalwani

  • About TARLABS Pvt Ltd

    | Specialize in implementing automation using QTP and Selenium

    | Expertise in QTP to Selenium Migration

    | Other services we offer| Data scraping and Crawling

    | Automation using API

    | Custom Process/Task Automation

  • About the Speaker

    | Author of 3 best selling books on QTP| QuickTest Professional Unplugged, 2nd Ed

    | QTP/UFT Interview Unplugged, 2nd Ed

    | QTP Descriptive Programming Unplugged

    | 12+ yrs of experience in Testing Automation

    | Director/Founder at TARLABS Pvt. Ltd. (www.tarlabs.com)

    | Blogger and founder of www.KnowledgeInbox.com

  • Agenda

    | Introduction to QTP and Selenium

    | Differences between QTP and Selenium

    | Migration to Selenium

    | Benefits

    | Challenges

    | Q&A

  • What is QTP/UFT?

    | QTP/UFT is UI + Backend Services test automation tool

    | QTP was earlier developed by Mercury which got acquired by HP in 2006

    | QTP a.k.a. QuickTest professional is now called as UFT a.k.a. Unified Functional Testing

    | QTP is a desktop based application

  • What is Selenium?

    | Selenium is a Web browser automation API

    | Selenium is a open source project with 108+ contributors

    | Selenium has become one of the preferred choice for Web and mobile automation

  • QTP v/s Selenium (AUT Technologies)

  • QTP v/s Selenium (Operating Systems)

  • QTP v/s Selenium (Languages)

  • QTP v/s Selenium (Browsers)

  • QTP v/s Selenium (Cloud Execution)

    One test per machine Windows VMs are costly Higher setup and maintenance time

    Multiple & Simultaneous test per machine Linux VMs are cheap Medium setup and maintenance time Cloud testing providers available (like SauceLabs)

  • QTP v/s Selenium (License Cost)

    Customers using BPT framework end up paying license cost of ALM, BPT and UFT

  • QTP v/s Selenium (Trends)

    QTPSelenium

    Google Trends Web Search

    Google Trends Youtube Search

  • Why should I migrate to Selenium?

    | QTP was designed to test one application at a time on a single machine.

    | Selenium can run code on one machine and test the application on remote machine

    | Selenium is cloud ready while QTP is not

    | Same hardware can generate more execution power in Selenium compared to QTP

    | Selenium supports more browsers and more languages

    | Selenium multiple language choice makes it easy to integrate into development environment and do continuous integration

  • How to plan a Migration

    | Choose a Language to use with Selenium

    | Start with just 1 test case to do a Proof of Concept, no frameworks, just plain script

    | Notice the issues and difference in execution from QTP

    | Try adding 5-10 more scripts and repeat the same exercise

    | Dont look to push a framework at start

    | Dont try migrating existing code approach

  • Benefits

    | Possible to move testing from QA to Development team as part of Unit Testing

    | Integration with most Continuous Integration (CI) systems

    | Lots of language to choose from and easy to integrate test with development language

    | More control over the framework because of language choices

    | Possible to implement scalable testing using cloud/grid

    | Faster execution

    | Lots of frameworks including most of the Unit Testing frameworks

  • Challenges

    | IE driver uses JavaScript simulated XPATH

    | Scripts working in Firefox and Chrome may not work in IE

    | No tools like DataTable for data driving test

    | No Object Repository to store object mappings

    | No object types in Selenium. Only WebElement and Select

    | TABLE and other common HTML elements need extra code to work

    | Different browsers may exhibit different issues on operations

    | Higher development effort for initial few months

  • Case Study QTP to Selenium (IPCM)

    | Existing Test Suite in QTP with 3 hours execution on single machine

    | POC Test migration execution time was reduced from 4.5 min (QTP) to 2.5 min (Selenium)

    | Full migration to a new C# based framework

    | Time duration: 2.5-3 months

    | Execution time of Selenium suite with 6 parallel browsers on Same machine 20 min (89% faster than QTP)

  • Abhijit Pendyal, Sales Engineer

    1/28/2015

  • Selenium is an open source test automation framework that automates web browsers.

  • Appium is an open source test automation framework which automates, native, hybrid and mobile apps.

  • Android UiAutomator! Architecture!

    WebDriver Interface

    iOS UIAutomation!Powered by Instruments

    Selendroid!For older Android devices

  • What is Sauce Labs?

  • We have built the worlds largest grid for executing Selenium & Appium tests. Wereopen-source at heart contributing to both projects.

  • Local Selenium Grid

    HubReceives test requests and relays them to Desired Node

    NodesExecute

    commands on browsers as directed by

    the hub

  • Selenium on Sauce

  • 470+ configurations

  • What is Sauce Connect?

  • Sauce LabsCustomers Environment

    (TLS) saucelabs.com

    (HTTP/S) saucelabs.com

    Sauce Connect

    (2

    (1VMsVM

    Sauce LabsAPI

    Sauce Tunnel

    2

    1

    Sauce Connect

    ApplicationUnder Test

    Corporate Firewall

    DMZ

  • Con$nuous'Integra$on''

    Typical CI Usage

  • Sauce'Labs'Pla4orm'

    Largest'cloud'for'automated'tes$ng' Test'web'&'mobile'apps'across'470+'pla4orms' Industry'standard'Selenium'WebDriver'protocol Game-changing stability and scale Capture screencasts, logs, test metadata

    Se drivers for

    On Sauce

    Sauce Connect

    Test appSauce

    Connect

    Your script

  • Thank you

  • Demo

  • When should I not choose Selenium?

    | If your application is not Web or Mobile, you should look at other automation tool like QTP, TestComplete etc

    | If you dont love Open Source software

    | If you prefer GUI based tools which allow you to create, manage and execute test cases

  • Pre-Webinar Q&A

  • Pre-Webinar Q&A

    | Can we selenium on Windows based application?| No, but Selenium has lot of language support, so you can always mix it with other solution like Sikuli, AutoIt,

    CodeUI

    | Will Selenium remain Open source? Is it possible that its made a paid tool future| It will always be open source

    | How much programming knowledge is required? What is the learning curve if I already know QTP?| Requires basic HTML, XPATH, CSS and a supported language knowledge. Not a very steep learning curve

    | Can we really remove QTP/UFT?| Its not a question of removing one tool. Its about looking at cost and implementation benefits of different tools

    | Does Selenium solve some of the QTP problems?| No, in fact it may add few to your list. But you can you solve more problems while using Selenium than you can

    while using QTP

  • Pre-Webinar Q&A

    | When making the decision, are you considering the programming skill level of your QA team and the ease of learning the new language or are you assuming the QA team has the necessary programming skills to begin with to readily use the tool as QTP is MUCH easier to transition to for non-programmer QA types than Selenium which requires a knowledge of at least one TRUE programming language (ie C#, Java etc)| Core team develops framework and rest QA team uses it

    | Selenium being a open source tool, so their is no dedicated support team. In this how can any clients rely on this tool?| A trade off with any open source solution, Isnt it?| Sometimes even paid tool support cant help

    (https://connect.microsoft.com/IE/feedback/details/1062093/installation-of-kb3025390-breaks-out-of-process-javascript-execution-in-ie11)

    | What are the typical barriers that may prevent an organization to move towards selenium?| Existing investment into Paid solutions like QTP| Lack of developers in the company eco system

    | What was the most difficult thing to come from QTP to Selenium?| Developing the base framework and coding for features which already existing in QTP

  • [email protected]/in/tarunlalwani

View more