Solve missing object problems
Relevant for: GUI tests and components
If your test or component attempts to perform an operation on an object that is not currently present in your application, select the reason that best explains the missing object:
The object no longer exists
If the object no longer exists in your application, delete or modify all steps that refer to this object.
The object is not always displayed
If the object is displayed only in certain situations or when certain conditions are met, try one of the following:
-
Insert a conditional statement before the step containing the object.
For example:
If Browser("Advantage Shopping").Page("Advantage Shopping").WebEdit("username").Exist Then Browser("Advantage Shopping").Page("Advantage Shopping").WebEdit("username").Set "tutorial" End If -
Set the step containing the object as an optional step.
For details, see Optional steps.
The object did not have time to load
If the object is currently missing because it did not have enough time to load, try one of the following to solve synchronization problems:
- Insert a Wait statement, or create a Wait function and insert a call to it, prior to the step containing the object to instruct OpenText Functional Testing to wait a specified amount of time before continuing with the step containing the object.
- Use the control-flow statements to wait until the object is displayed before performing operations on the objects. For details, see Comments, control-flow, and other programming statements.
- For Web objects only: Increase the Browser Navigation Timeout (File > Settings > Web node). For details, see the section describing Web based settings for your test or application area in the Add-ins section of the Help Center.
- For tests: Increase the Object Synchronization Timeout (File > Settings > Run node).
- For tests and scripted components: If the object is displayed only after another object's property achieves a certain value, insert a synchronization point (select Design > Synchronization Point while recording) or a WaitProperty statement for the object on which the missing object is dependent. For example, suppose an OK button becomes enabled after a status bar shows that an operation is complete. You can insert a synchronization point (WaitProperty statement) to wait until the status bar reaches 100% before continuing with a step to click the OK button.
The test produced an unexpected outcome
If the object is not displayed in the application because you navigated to the wrong page, or one of the previous steps was not performed as you expected, check the following:
- Is there something wrong with your test or component design? Check each step in your test or component. You may be missing a step, or one of your method arguments may contain incorrect information.
-
Has something in your application changed since you designed the test or component? If so, check for proper navigation links and object descriptions.
For object description troubleshooting assistance, see Solve object description problems.

