Let’s suppose that you’re a hospital, and have just realized that you need an automated solution for your testing. Why automated? Because automation is the only way to get the excellent coverage you need without requiring days or even weeks of testing time. We want to test functionality and integration and performance, on a system that is heavy on database content, including files of very large size (medical images).
When automating your testing, selecting the right tool for your needs is the most important early decision you can make. This foundation commits you to a path, and the test scripts you produce will be linked to your choice. All automation testing tools have different benefits and deficits, but a deficit that is irrelevant to your needs is not really a deficit, is it? So, let’s take a look at 3 popular tools (QTP/UFT, Selenium, TestComplete) and when each of them may be the preferred choice for you, or the most obvious choice to avoid. They each complement different personalities. They are all popular, allow front-end functional and regression testing, and allow you to code directly at the element level. And please do not feel like these are the only good automation tools out there.
HP UFT (formerly QTP) benefits: This uses VBScript, one of the easier languages to learn. It provides you with easy access to the UI layer, the service layer, and the back-end database layer. It is easy to use for navigating, validating, and generating reports and log files. You have the option of using GUI-based tools throughout the suite. It supports data-driven testing, meaning that data values can be input or output from external tables instead of being hard-coded in the scripts. The scripts can be edited at the keyword or source code levels, enabling access by scripters of low or high programming abilities. It has a logical built-in suite of supporting tools (as compared to Selenium, where you need to assemble and install separate plug-ins if you want to do common things like logging and reporting). And, it can be used for non-UI testing like file system operations and database testing.
HP Deficits: You’re limited to VBScript as your programming language, which is object-based but not object-oriented (its documentation is fairly poor too). This is the most expensive of the 3 automation tools, by a lot, including recurring licensing fees. It does not work on non-Windows, and is limited in which Windows browsers (and versions of them) it supports. QTP’s Object Repository is neither dynamic nor customizable, unlike TestComplete’s Name Mapping. Execution time is on the high side, as is hardware resource consumption during execution. It requires a different HP product for mobile device support. It cannot run multiple/simultaneous tests per machine, and is not designed for cloud testing. See more here