Home
About
All Articles
Download
QTP Tutorials
Contact Me
QTP Websites
169
3
FLARES
Most of the times, when you are creating test scripts or are designing a new QTP Framework, you would be trying to
come up with reusable functions which you would have to store in the function library. Now, in order to use this function
library with multiple test cases, you need to associate this function library with your scripts. This article explains the
4 methods that will help you in associating the function libraries in QTP Test Cases.
Based on the type of framework you are using, you can use any of the following methods to associate function libraries
to your QTP Script -
1) By using File > Settings > Resources > Associate Function Library option in QTP.
2) By using Automation Object Model (AOM).
3) By using ExecuteFile method.
4) using LoadFunctionLibrary method.
Lets see in detail how each of these methods can be used to map function libraries to your test scripts.
1. Using File > Settings > Resources > Associate Function Library option from the Menu
bar
This is the most common method used to associate a function library to a test case. To use this method, select File >
Settings option from the Menu bar. This will display the Test Settings window. Click on Resources from the left hand
side pane. From the right hand side pane, click on the + button and select the function library that needs to be
associated with the test case.
1 of 6 1/29/2016 8:16 AM
4 Different Ways to Associate Function Libraries to your QTP Scripts -... http://www.automationrepository.com/2011/09/associate-function-librar...
QTP AOM is a mechanism using which you can control various QTP operations from outside QTP. Using QTP Automation
Object Model, you can write a code which would open a QTP test and associate a function library to that test.
Example: Using the below code, you can open QTP, then open any test case and associate a required function library to
that test case. To do so, copy paste the below code in a notepad and save it with a .vbs extension.
1 'Open QTP
2 Set objQTP = CreateObject("QuickTest.Application")
3 objQTP.Launch
4 objQTP.Visible = True
5
6 'Open a test and associate a function library to the test
7 objQTP.Open "C:\Automation\SampleTest", False, False
8 Set objLib = objQTP.Test.Settings.Resources.Libraries
9
10 'If the library is not already associated with the test case, associate it..
11 If objLib.Find("C:\SampleFunctionLibrary.vbs") = -1 Then ' If library is not already added
12 objLib.Add "C:\SampleFunctionLibrary.vbs", 1 ' Associate the library to the test case
13 End
ExecuteFile statement executes all the VBScript statements in a specified file. After the file has been executed, all the
functions, subroutines and other elements from the file (function library) are available to the action as global entities.
Simply put, once the file is executed, its functions can be used by the action. You can use the below mentioned logic to
use ExecuteFile method to associate function libraries to your script.
1 'Action begins
2 ExecuteFile "C:\YourFunctionLibrary.vbs"
3
4 'Other logic for your action would come here
5 '.....
LoadFunctionLibrary, a new method introduced in QTP 11 allows you to load a function library when a step runs. You
can load multiple function libraries from a single line by using a comma delimiter.
2 of 6 1/29/2016 8:16 AM
4 Different Ways to Associate Function Libraries to your QTP Scripts -... http://www.automationrepository.com/2011/09/associate-function-librar...
This was all about the different ways using which you can associate function libraries to QTP Scripts. What are your
views on this article? Can you think of any other points which I have missed and can be added here? Please let us know
your views using the comments section. Happy Reading.. :)
If you enjoyed this article, you can join our blog to get free email updates directly in your inbox.
To check out more tutorials, visit our QTP Tutorials page. You can also check the Archives page to view the list of all our articles.
3
FLARES
No related posts.
3 of 6 1/29/2016 8:16 AM
4 Different Ways to Associate Function Libraries to your QTP Scripts -... http://www.automationrepository.com/2011/09/associate-function-librar...
Meera
Amith CJ
1. If you have a user defined class in your library file, you need to use ExecuteFile.
QTP will not load them if you use LoadFunctionLibrary.
2. ExecuteFile can load one library file per statement while you can load many library
files in a single LoadFunctionLibrary statement (you need to separate library file paths
using a comma).
4. Using ExecuteFile will not allow to go into the function in debug mode using F11
while LoadFunctionLibrary allows you to do that.
Sidhant Raj
Ashok Kakade
Hi All
Can we Load only one function from Function Library which have multilple functions ?
what is the script in QTP to run both (flight 3a & 4a) flight reservation app?
Stephan Coetzee
Hi,
I do however have one question: What is the best way to update the function library if I were
to update object names in the OR (Object Repository)? According to me the function library is
4 of 6 1/29/2016 8:16 AM
4 Different Ways to Associate Function Libraries to your QTP Scripts -... http://www.automationrepository.com/2011/09/associate-function-librar...
QTP Expertise
What's your expertise level in QTP?
Just Started
Beginner Level
Intermediate Level
Expert Level
View Results
5 of 6 1/29/2016 8:16 AM
4 Different Ways to Associate Function Libraries to your QTP Scripts -... http://www.automationrepository.com/2011/09/associate-function-librar...
6 of 6 1/29/2016 8:16 AM