The Unofficial Guide to QTP 10. QTP10.com is a new and completely free website that offers help in all the versions of HP QTP (including latest version 10). More importantly, it offers free code for users of HP QuickTest Professioal. This site helps you in learning the basics of QTP and descriptive/advanced programming in (QTP) on various environments like - .Net, Infragistics, Web, Windows, etc.

QTP10.com is a new and completely free website that offers help in all the versions of HP QTP (including latest version 10). More importantly, it offers free code for users of HP QuickTest Professioal. This site helps you in learning the basics of QTP and descriptive/advanced programming in (QTP) on various environments like - .Net, Infragistics, Web, Windows, etc.

Note - This blog is NOT affiliated with HP / Hewlett-Packard in any way. The data/questions come from various sources and we have our own testing questions. I am just another Software Tester like you.

Note: In most situations, you should use a SystemUtil.Run statement to run applications or to open files in their default application. The InvokeApplication statement is supported primarily for backward compatibility.

Example: The following example uses the InvokeApplication function to open Internet Explorer.

Method 2. The use of "SystemUtil.Run" command - Runs a file or application.

When specifying a non-executable file, the file opens in the associated application.

Note: A SystemUtil.Run statement is automatically added to your test when you run an application from the Start menu or the Run dialog box while recording a test.

Tip: You can also use this method to perform operations on the specified file, similar to the usage of the Windows ShellExecute command.

You can directly run the windows applications by just giving the application name. No need to give complete path.

Example:

SystemUtil.Run “IEXPLORE.EXE”

Note – The difference between SystemUtil.Run and InvokeApplication is – In SystemUtil.Run No need to give complete path for windows shell applications. But in InvokeApplication you need to give path for each application.

Example -Open a Text File in the Default Text Application (Notepad)

Sub CloseDescendentProcesses_Example() 'The following example uses the Run method to open a file named type.txt 'in the default text application (Notepad). It then types "happy days", 'saves the file using shortcut keys, and then closes the application.

If you decide not to associate a function library (any VBScript file) with a test, but do want to be able to call its functions, subroutines, and so forth from an action in your test or from another function library, you can do so by inserting an ExecuteFile statement in your action.

When you run your test, the ExecuteFile statement executes all global code in the function library making all definitions in the file available from the global scope of the action's script.

Note: You cannot debug a file that is called using an ExecuteFile statement, or any of the functions contained in the file. In addition, when debugging a test that contains an ExecuteFile statement, the execution marker may not be correctly displayed.

Tip: If you want to include the same ExecuteFile statement in every action you create, you can add the statement to an action template.

To execute an externally-defined function:

1. Create a VBScript file using standard VBScript syntax. For more information, see the Microsoft VBScript Language Reference (Help > QuickTest Professional Help > VBScript Reference > VBScript). 2. Store the file in any folder that you can access from the computer running your test. 3. Add an ExecuteFile statement to an action in your test using the following syntax: ExecuteFile FileName

where FileName is the absolute or relative path of your VBScript file.

4. Use the functions, subroutines, and so forth, from the specified VBScript file as necessary in your action.

Method 4. The use of "WshShell.Exec" method - Runs an application in a child command-shell, providing access to the StdIn/StdOut/StdErr streams.

Remarks The Exec method returns a WshScriptExec object, which provides status and error information about a script run with Exec along with access to the StdIn, StdOut, and StdErr channels. The Exec method allows the execution of command line applications only. The Exec method cannot be used to run remote scripts. Do not confuse the Exec method with the Execute method (of the WshRemote object).

Example The following example demonstrates the basics of the Exec method.