Squish/Waiting for a Progress Bar: Difference between revisions

From Qt Wiki
Jump to navigation Jump to search
(Un-nominate for deletion: Page is no longer a category)
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
{{Delete|reason=Page not category. Include as single block in [[Squish: waiting for a progress bar or a progress dialog]] if relevant}}
{{LangSwitch}}
[[Category:Tools::Squish]]
[[Category:Squish]]
 
= Waiting for a progress bar or progress dialog =


When you have a calculation or some other work item in your AUT that takes an arbitrary amount of time to complete, it can be hard to get your test script to be stable by just using snooze() or waitForObject() calls to wait for the work item to finish. Instead, you can use the more powerful waitFor() method, that takes any code statement, executes it until it returns True, or until the optional timeout is reached before it continues the script playback.
When you have a calculation or some other work item in your AUT that takes an arbitrary amount of time to complete, it can be hard to get your test script to be stable by just using snooze() or waitForObject() calls to wait for the work item to finish. Instead, you can use the more powerful waitFor() method, that takes any code statement, executes it until it returns True, or until the optional timeout is reached before it continues the script playback.

Latest revision as of 08:41, 8 December 2018

En Ar Bg De El Es Fa Fi Fr Hi Hu It Ja Kn Ko Ms Nl Pl Pt Ru Sq Th Tr Uk Zh

When you have a calculation or some other work item in your AUT that takes an arbitrary amount of time to complete, it can be hard to get your test script to be stable by just using snooze() or waitForObject() calls to wait for the work item to finish. Instead, you can use the more powerful waitFor() method, that takes any code statement, executes it until it returns True, or until the optional timeout is reached before it continues the script playback.

Assuming the work item shows a progress bar or a progress dialog while it is running, you can easily use waitFor() to make sure your script does not continue playback until the work item has completed and the progress dialog has gone away:

clickButton(waitForObject(":Dialog.Calculate_QPushButton"))
waitFor("object.exists(':_QProgressDialog')", 20000)
waitFor("not object.exists(':_QProgressDialog')")