Hi,
I am currently using testcomplete 12.5v for desktop automation.
I am currently trying to delay the script execution with aqUtils.Delay(milliseconds).
Please help me how to use explict delay in testcomplete v12.5?
Note: I have browsed and found that its available in later versions. But I need the same functionality to be executed in the version mentioned above.
Solved! Go to Solution.
There is no built-in dynamic object waiting function.
What you can do is build something like this in VB. I don't know VB personally, but I'm sending you an example in JS.
function waitForObj(obj, counter) { var counter = counter || 60; for (var i = 1; i <= counter; i++) { if (obj.Exists == false) { aqUtils.Delay(1000); } else { return true; //break; } } }
Hi,
What do you mean by "explict delay"? Do you want to wait dynamically for an object?
and if it appears You want to go on?
If your looking for some kind of delay like seleneum in python at least you can just
import time
running = True
oldtime = time.time()
while running:
if Condition or time.time() - oldtime > 59: #time in seconds to wait
running = False
Hi,
Check documentation for .FindChildEx() and .WaitXXX() methods.
Yes, this is what i need it. It should wait dynamically for an object and if it appears it should be proceed.
Please tell me, what type of function can be used for this using vbscripting?
Thanks. For me It should wait dynamically for an object and if it appears it should be proceed.
Please tell me, what type of function can be used for this using vbscripting?
Thanks. But please tell me that the function you said will behave as It should wait dynamically for an object and if it appears it should be proceed.
If Yes, please tell me, wheather this function can be used by vbscripting?
There is no built-in dynamic object waiting function.
What you can do is build something like this in VB. I don't know VB personally, but I'm sending you an example in JS.
function waitForObj(obj, counter) { var counter = counter || 60; for (var i = 1; i <= counter; i++) { if (obj.Exists == false) { aqUtils.Delay(1000); } else { return true; //break; } } }
Thanks. I will implement this idea.
Hi,
Have you read the documentation for the methods that I mentioned?
They do exactly what you have asked for - they wait for the object to appear within specified timeout and proceed.
All methods and functions provided by TestComplete can be used with any scripting language supported by TestComplete.
And, unlike a great many of other software, TestComplete provides a really comprehensive documentation which is definitely worth detailed reading.
P.S. I am doubting that the code provided by @Wamboo will work - if the function is provided by an empty object (as a result of the failed search), then this object will not get a reference to the sought for object even if this sought for object appears during the loop. Thus obj.Exists will never become true.