QTP’s LoadFunctionLibrary is slow

Question ID: 104962

I’m working on a project that has around 300 function libraries. They’re all located on the C drive of the automation host. Those libraries used to be associated "statically" to each test (we don’t do this manually, of course, we use Test Design Studio). We’re currently trying to move away from that approach and associate everything dynamically with LoadFunctionLibrary. The first thing we tried was to load all libraries at one time (sort of like creating a huge include file). The result was our tests took over 2 minutes to start up. So we decided to optimize things a bit. Here’s what we did:

1. Making sure our scripts were only loading the libraries they required at the moment they needed them.
2. Reduced the number of search folders to a strict minimum.

All that tweaking reduced the test start up overhead to around 45 seconds which is still hardly acceptable. Are there other ways to speed up LoadFunctionLibrary?



The test itself is stored in Quality Center while the libraries are stored on the C drive. It seems that moving the test to the C drive drastically improves LoadFunctionLibrary’s performance. I then tried to move a subset of the libraries from the C drive to a Quality Center folder hoping that having the test and the libraries at the same place would speed things up. Unfortunately, it did not.

Marked as spam
Posted by (Questions: 3, Answers: 0)
Asked on April 11, 2013 9:21 pm
Answers (2)
Private answer

Here are some things to look at:

- Do you have Anti Virus that is scanning the library on access?
- is the library .qfl or .vbs? Try renaming it.
- Have you tried ExecuteFile method? Executes the VBScript statements in the specified file. After the file runs, the definitions (functions, subroutines, classes, etc.) in the file are available from the global scope of the action's script.

Marked as spam
Posted by (Questions: 2, Answers: 98)
Answered on April 12, 2013 4:30 pm
Thanks for the advices. There's no anti virus scaning the files while they're loading. I tried to change the extension of the library files to qfl but it did not reduce the start up time. Using ExecuteFile did not improve performance either.
( at April 12, 2013 6:19 pm)
Private answer

In this case I do not think it will help with function library load times but alway recommend installing the critical patches for QTP 11 or QTP 10

**QTP 11 critical patches**

  1. QTP_00709
  2. HP Run Results Viewer v11.0 RRV_00019
  3. Business Process Testing (BPT) QTP_00906 Relative This applies for QC / ALM Integrations also but not recommend QC 10.
  4. Review the other patches for QTP 11.

**QTP 10 Critical patches**

  1. QTP_00591
  2. Core QTP_00626 Cumulative patch.
  3. Windows 7 / 2008 R2 Support QTP_00644
  4. Review the other patches for QTP 10.
Marked as spam
Posted by (Questions: 2, Answers: 98)
Answered on April 15, 2013 10:21 am