Please post your Web Driver questions in official Web Driver forum

Wednesday, February 8, 2012

Is it sane to compare Selenium with QTP?

I have seen many articles which compare Selenium (1 or 2) with QTP (or other commercial tools). But these articles miss very basic point that Selenium is a library available in variety of language while QTP has entire gamut of tools with it. So if you were to really compare QTP with Selenium then comparison should be based on the library of languages which is offered either of these tools, which in my opinion Selenium wins outright over QTP.
My only intention of writing this post is not claim Selenium victory of QTP but to demonstrate how badly Selenium is compared with QTP at times. There might be things QTP would be good at doing (I left QTP long ago hence can not name any) but to disregard Selenium on the factors I listed herein is highly biased.
  • Object spying - Sure, you have QTP recorder which does it for you but don't forget that you can test object locator using Selenium IDE and it is not limited to using only Selenium IDE. Firebug with Firefox can be used for same while Chrome has built in development tool bar to test element locator. In case you don't know you can use $$("cssLocator") to test css locator and $x("xpathLocator") to test xPath in both FF and chrome to test application objects. Can you use QTP to test object locators in FF and Chrome?
  • Debugging code - So QTP comes in with built-in editor and Selenium is defeated in this aspect. Is it? Given the variety of languages Selenium can be used with, you have far greater language editor options with Selenium than with QTP.

Which testing role are you playing and why

Which category of software tester do you fall in?
  • Manual tester: who gets the requirements (or some times not), works along with development team when they are using non verbal languages (read - java, c#, php etc) and you are using most sophisticated language (read english) to jot down the same thing - client expectations.
  • Work delegation Engineer:  You assign work to fellow testers, question them when they miss deadline or defects, make sure they have enough work for entire week and probably more after heading home. Now you know which category you fall in.
  • Tool analysis and recommendation engineer: You job is to recommend tools for various situations. Tool could be as simple as xenu link checker or those zillions of automated UI testing and performance tools.
  • UI Automation test engineer: You automate most pressing use case scenarios so that you and you team could spend time in rational manual testing find valuable defects.
  • Time pass tester (aka Facebook tester)
Fork me on GitHub