QTP vs Selenium - Compare

gagneet picture gagneet · Jan 23, 2011 · Viewed 31.4k times · Source

I have an application/product which is created using .net technologies. This product has a GUI, which connects to a DB using a Web API (SOAP on an application server). Majority of the tests are executed for the values in the DB, while the others may fall into Usability, Performance, etc. As such, 60-70% of the tests to be executed are to verify if the values in the DB are correctly shown on the GUI, while the others test if the GUI is working as desired in the requirement specifications.

The other aspect to the testing will also be testing the backend Application server interface with both the DB and the GUI. As this will enable us to determine, if the App Server is sending bad values to the GUI or is it the DB which has bad values!

The product UI does not change much, except to add new features in the form of additional dropdown menu items and additional pages for these menu items.

Considering the above, which framework would be more suitable? QTP or Selenium or some other Commercial/Open Source tool?

(Cost is not a major concern, and neither is browser compatibility or OS. The system installs on a Windows Server, and DB is compatible.)

Answer

c_maker picture c_maker · Jan 23, 2011

We have an acceptance testing 'framework' built around Selenium to test our app which has a flex UI that talks to a java + db back-end.

We could easily integrate Selenium into our existing testing and continuous integration infrastructure because we can write our scripts in java and use junit to drive the testing. These tests are also written and maintained by developers. We also use dbunit to set up the database before each test.

Our test department however decided to go with QTP. They were shown our infrastructure built around Selenium but they found it hard to understand. I know they have a full-time dedicated person to write the tests and maintain them.

Since I do not know your exact situation I can only suggest you to consider the following:

  • Who is writing and maintaining the tests?
  • Are the suites going to be part of a larger infrastructure?

Selenium is an excellent choice if...

  • you have developers responsible for writing and maintaining the tests
  • you need to have these tests as part of a larger infrastructure
  • you are pretty sure you do not need to do much testing outside of the browser
  • you think you might want to test other browsers and other platforms besides Windows
  • you want something free

QTP might be a good choice if...

  • you have less code-savy people writing and maintaining tests (though I am not sure if Selenium IDE is hard to learn for non-coders)
  • if you need significant testing outside of the browser

This article might also help you.

I think it is obvious which one I prefer, but you need to decide what works best for your situation.