If Object Auto-wait timeout not working
In the above image, the keyword test runs fine as long as I have the Delay preceding the highlighted If Object test action. If I remove the delay and instead set the Auto-wait Timeout of the highlighted If Object test action to even a ridiculous amount, like 30000 ms, the keyword test fails with a log message of "Unexpected window: 'EZSetup Wizard' 16:37:29 Normal 13.15" which is the object the highlighted If Object should be waiting for. In addition, there is no indication in the TestComplete indicator that the test is waiting for the object to appear, as is the case with the other If Object test actions in the keyword test.
Solved! Go to Solution.
If the other If Object - Visible lines in your test are working properly, then I would contact Support about this issue. Here's the link: https://support.smartbear.com/message/?prod=TestComplete
If none of them are working, I would suspect a timing issue. Try using the Debug function and step through one that isn't working so you can see what TestComplete sees at each point.
My current understanding is like this:
> Unexpected window: 'EZSetup Wizard'
This message means that the object (window) that your test code tries to interact with is overlapped by another modal window which makes it impossible for TestComplete (like for the human user) to interact with the target window.
Considering the above, it looks like that your test code tries to click the Cancel button on the EZWizard form. But at the moment of click this form is overlapped by the EZSetupWizard one. This makes it impossible to click Cancel button and triggers the Unexpected Window error.
With the Delay operation enabled, EZSetupWizard window has enough time to close and this unblocks access to the EZWizard form.
More reliable way to implement this part of test is to wait until the Exists property of the EZSetupWizard window becomes false and then continue. This can be implemented using the .WaitProperty() method.
/Alex [Community Champion]
[Community Champions] are not employed by SmartBear Software but
are just volunteers who have some experience with the tools by SmartBear Software
and a desire to help others. Posts made by [Community Champions]
may differ from the official policies of SmartBear Software and should be treated
as the own private opinion of their authors and under no circumstances as an
official answer from SmartBear Software.
The [Community Champion] signature is assigned on quarterly basis and is used with permission by SmartBear Software.
Thanks for the replies and ideas folks. It turned out that the FormEZWizard didn't actually even exist in the mode the SetupScreen was in at the time, so I added an IfObject Exists ahead of the IfObject Visible and it works fine now.
Happy to hear that the solution was found. Happy testing!
SmartBear Community and Education Manager