All Case Studies

  • Case Study on QTP to Selenium Migration

    1. Abstract:
    2. A publicly traded, US based online company with a revenue of around $1B had a limited number of QTP licenses. This meant that with approx. 8000 QTP Scripts took a week each time to complete execution. These QTP licenses were also due for renewal. Substantial costs would have to be incurred to increase the number of licences and to renew them. In the face of such loss of productivity and potentially increased costs, the company sought a tool to migrate the QTP Scripts to Selenium in a clearly-defined time frame.

    3. Business Problem:
    4. Our customer, this online company, sought to shift their base from QTP to selenium, within 6 months. The original need was to transfer 8000 scripts of QTP to Selenium. However a deeper study of the required developer resources drove the conclusion that this would be too expensive and slow. ThinkSys who had done many such migrations before was brought in as an expert to address these challenges and still achieve the business objectives.

    5. Technical Challenges:
    6. Though, both QTP and Selenium are used for Web based automation but the programming language and the framework for QTP and Selenium, are completely different. As the team reviewed the QTP scripts they found numerous challenges in both how the scripts were written as well as basic difference between QTP and Selenium. Below are some of the challenges the team saw:

      • Many of the scripts were written using the QTP Record and Play feature. This feature though hand in writing QTP scripts did not easily translate to Selenium.
      • There were many locations where QA Automation engineers had used delay tactics by using Wscript.Sleep (x). Since Selenium had a very different behaviour, we knew these will not translate well.
      • All the programmatic conditions would need to be coded from the VB script to Java or C# because Selenium scripts are written using Object Oriented concepts. Our programmers wanted to use better design and new concepts which were not a one to one translation.
      • There was no reusability in QTP Scripts. This was a maintenance nightmare and hence we needed to rewrite these using Selenium’s page object pattern with a complete reusable modules of code
      • Implementation of Dynamic Test Data for large test suite was a challenge.

    7. Proposed Solution:
    8. With speed and technology as the major driving force, our team first used some of our auto-conversion tools, which had been used before, that converted some of the simpler scripts from QTP to Selenium. This conversion was less than 5% for this complex job. Though our tools were successful for smaller sized projects, the above mentioned technical challenges were a hindrance for auto conversion.

      The team quickly got to work and built a framework, Krypton, that allowed us get the benefits of using Selenium, removed some of the programming challenges of C# and/or Java and got our manual and QTP script writers to start coding in Selenium in 2-4 weeks.

      With Krypton, we got the following benefits:

      • QTP script writers and Manual testers could be trained in 2-4 weeks.
      • No learning of in depth programming concepts was required. No programming!
      • High degree of reusability was easy to achieve.
      • Allowed for A/B testing of sites.
      • Solved for many browser idiosyncrasies.
      • Helped create a solution to the Sleep(x) issue.
      • And many more items.

      This choice and our small team of 6-8 resources were able to to address the time, and cost issues associated with conversion of QTP scripts to Selenium.

    9. Benefits to Customer:

      • QTP License Cost:
      • Customer successfully migrated QTP to Selenium. The projected reduction in license costs were as much as $2M per year.

      • Productive Gains:
      • With Selenium, Customer could add as many servers as they needed using Selenium grid without having to get more licenses and run their 8,000 test cases in parallel decreasing the overall execution time resulting in 2 week release cycle.

      • Resource re-utilization:
      • With use of ThinkSys tools, customer was able to redeploy their manual testers and QTP script writers with very little training resulting in $1M/yr savings.

Client Testimonials

This is outstanding progress by the ThinkSys India team! I know you all have been working long hours and have been receiving new direction from us daily and sometimes hourly. We appreciate you taking a day out of your weekend to help us with this critical release. Integrating automation in an agile environment is extremely difficult and the entire ThinkSys India team has done a great job.

QA Director, online dating service company

ThinkSys has been providing outstanding, timely and reliable service for us. The company's staff is highly resourceful in identifying and executing solutions. The company has deep core expertise in QA automation, but we have used them for several other technical implementation services.

USA based CEO