This is an old revision of this page, as edited by 117.241.123.143 (talk) at 10:37, 16 October 2009 (→External links). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Revision as of 10:37, 16 October 2009 by 117.241.123.143 (talk) (→External links)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)This article relies excessively on references to primary sources. Please improve this article by adding secondary or tertiary sources. Find sources: "UFT One" – news · newspapers · books · scholar · JSTOR (August 2007) (Learn how and when to remove this message) |
This article includes a list of references, related reading, or external links, but its sources remain unclear because it lacks inline citations. Please help improve this article by introducing more precise citations. (August 2008) (Learn how and when to remove this message) |
This article contains promotional content. Please help improve it by removing promotional language and inappropriate external links, and by adding encyclopedic text written from a neutral point of view. (August 2008) (Learn how and when to remove this message) |
Developer(s) | HP/Mercury Interactive |
---|---|
Stable release | 10.0 |
Operating system | Microsoft Windows |
Type | test automation tools |
License | Proprietary |
Website | HP QuickTest Pro |
Quick Test Professional (QTP) is an automated functional Graphical User Interface (GUI) testing tool created by the HP subsidiary Mercury Interactive that allows the automation of user actions on a web or client based and desktop computer application. It is primarily used for functional regression test automation. QTP uses a scripting language built on top of VBScript to specify the test procedure, and to manipulate the objects and controls of the application under test.
As part of a functional test suite, it works together with Mercury Interactive WinRunner and HP Quality Center and supports enterprise Quality Assurance.
Overview
QTP is UI automation software designed for testing Web-based and Windows based applications running on Microsoft Windows. Like other test automation tools, it works by identifying the objects in the application UI or a web page and performing the desired operations on them (like mouse clicks or keyboard events); it can also be used to capture object properties like name or handler ID etc. To perform these actions, QTP uses a scripting language built on top of VBScript to specify the test procedure, and to manipulate the objects and controls of the application under test. To perform sophisticated actions, users may need to manipulate the underlying VBScript.
Though QTP is usually used for "UI Based" Test Case Automation, it can automate some "Non-UI" based Test Cases. (e.g. API (Certification testing), Database Testing, etc.)
License models
QTP comes with a 14-day demo license, and supports a node-locked seat license, as well as floating or concurrent licenses.
Record and playback
Initial development of automated tests with QTP is usually done by record-and-playback. A user's actions are recorded and transposed into comprehensible actions using VBScript. Once recorded, the scripts are editable in either Keyword View or Expert View.
To execute, users select the playback button, which re-executes the commands against the application under test. In real world usage, simply recording and playing-back actions is generally not valuable, as it simply repeats a test already executed and may no longer be valid (because the record now exists in the system, for example).
This record/playback behavior is not unique to QTP, but is shared by comparable automated functional testing tools, such as IBM Rational Functional Tester, MicroFocus TestPartner, and Borland SilkTest. There are a few other tools which supports "capture & replay" options (with a difference of a supported technologies) like free Selenium.
Verification
Checkpoints are a feature used for verifying that the application under test functions as expected. One can add a checkpoint to check if a particular object, text or a bitmap is present in the automation run. Checkpoints are used to verify that during the course of test execution, the actual application behavior or state is consistent with the expected application behavior or state.
There are 10 types of checkpoints available in QTP, enabling users to verify various aspects of an application under test, such as: the properties of an object, data within a table, records within a database, a bitmap image, or the text on an application screen. Users can also create user-defined checkpoints.
Exception handling
Recovery is the name for exception handling in QTP, with the goal of enabling the tests to continue to run if an unexpected failure occurs. For instance if an application crash occurs and a message dialog appears, QTP can be instructed to attempt to restart the application and continue with the rest of the test cases from there. Because QTP hooks into the memory space of the applications being tested, some exceptions may cause QTP to terminate, and may be unrecoverable.
Data-driven testing
QTP has features to enable users to perform data-driven testing. For example, data can be output to a data table for reuse elsewhere. Data-driven testing is implemented as a Microsoft Excel workbook that can be accessed from within QTP. There are two types of Data Tables available in QTP: the Global data sheet and the local data sheets. The test steps read data from these data tables in order to (for example) drive variable data into the application under test, and verify the expected result.
Automating custom and complex UI objects
Customized user interface objects and other complex objects may not be recognized properly by QTP. QTP offers a Virtual Object concept to enable users to add some degree of support for these objects. Assuming that the required information can be extracted from the object, this allows the users to successfully record and playback against that object. In practice, this is not always possible.
Add-in Extensibility
QuickTest add-in extensibility, available for some environments, enables you to extend the relevant QuickTest add-in to support third-party and custom controls that are not supported out-of-the-box. QuickTest add-in extensibility is currently supported for the Web, .NET, Java, and Delphi add-ins
Results
QTP generates the result file for the test cases at the end of test in the form of an XML tree. The result file provides detail regarding PASS and FAILS counts, error messages, and may provide supporting information that allows users to determine the underlying cause of a failure. Frequently, however, users may need to re-execute the test case and observe the failure directly
Quality Center Integration
Using QuickTest Professional together with Quality Center provides you an intuitive and efficient system for managing your tests and their resources (actions, function libraries, object repositories, recovery scenarios, data table files, and environments variables). You can manage asset dependencies and versions, schedule and run tests, collect, analyze, and share results report defects, and link your tests and defects to project requirements.
User interface
QuickTest provides two main views of a script: Keyword View and Expert View. They are selected from tabs at the bottom of the QuickTest Professional window.
Keyword view
Keyword View is QTP's default test procedure interface. It displays the automation steps of a test procedure as a descriptive tree of actions and functions. The tree contains columns listing the action or function name, parameters, and comments. This mode is useful for the beginners. This view allows the user to select the objects either from the application or from the Object Repository and the user can select the methods to be performed on those objects. The script is automatically generated. Users can also set checkpoints from the keyword view. Users without technical knowledge may be able to understand the Keyword View, but more experienced users and users needing to perform more complicated actions may need to switch to Expert View.
Expert view
In Expert View, QTP allows display and editing of the test's source code using VBScript. All test actions can be edited here except for the root Global action. Expert View acts as an IDE for the test. It includes many standard IDE features, such as breakpoints.
Languages
QTP uses VBScript as its scripting language. VBScript supports classes but not polymorphism and inheritance. Compared with Visual Basic for Applications (VBA), VBScript lacks the ability to use some Visual Basic keywords, does not come with an integrated debugger, lacks an event handler, and does not have a forms editor. HP has added some of these features to QTP, such as a debugger, but QTP's functionality is more limited in these areas compared with testing tools that integrate a full-featured IDE, such as those provided with VBA, Java, or VB.NET.
Drawbacks
QTP is not supported by non-Windows based applications. Neither can it be used by a plug-in in other environments. It fetches objects like ActiveX from the Windows environment which is not possible in any other OS. It also cannot be used via Remote Desktop Connection due to licensing issues..
Supported Technologies
- Web
- Java
- .Net
- WPF
- SAP
- Oracle
- Siebel
- PeopleSoft
- Delphi
- Power Builder
- Stingray
- Terminal Emulator
- Flex
Full list of supported environemnts can be found here
See also
External links
- QTP Basics
- HP Functional Testing Software Website
- QuickTest Professional Group at LinkedIn
- QTP group
- AdvancedQTP
- QTP SQA forum
- QTP Visual Tutorials
- The Software Inquisition
- QTP For Beginners