You have a very simple solution ...Instead of using wait property or inserting synchronization point. The following piece of script can be made reusable action and can be called anywhere while web page is loading.. If Browser (“micclass: =browser”).page (“micclass: =page”).exist then Environment. Value (“class”) = browser (“micclass: =browser”) Else if Environment. Value (“class”) = browser (“creationtime: =1”) End if Start timer = time Set B = Environment. Value (“class”) While B.busy = true OR B.readystate <> 4 Set B = Environment. Value (“class”) Wait (1) Wend End timer = time If time > = 0 then Msgbox (“browser is loaded”) End if Note: In While loop, 2 properties of Browser being used.
Some of the QTP projects/users might have experienced the following problem when their project getting huge or they need QTP execution very frequently for their product release. Problem: When repository is getting huge due to the large no of objects being added to object repository. Memory usage will be high when the Object repository size increased causing a decrease in the performance of QTP while recognizing objects. As you aware of QTP 8.2 and below Mercury recommends that OR size should not be greater than 1.5MB. Solution: Descriptive programming (DP) which does not depend on the QTP object repository features. But it stores the Application objects property values in the code itself. What is DP, how that can be achieved and when it is utilized more……… DP is nothing but avoiding QTP object repository by directly describing an object property values in the code. For example, to close a Browser, Set X = Browser (“Micclass: =Browser”) ‘code assigns Browser description to a variable.