Overview
Occasionally, a Click action may pass during a test execution, but the click interaction does not actually occur on the application's user interface. This can happen when an element is rendered in a way that prevents a standard browser click from registering, even though the element is successfully located by the test.
How It Works
When a click action fails to execute despite passing, you can often resolve the issue by adjusting the action's advanced settings. These settings provide alternative methods for interacting with elements.
Troubleshooting Steps
- Change the Executor Type to Operating System: This method simulates a click at the operating system level, which can be more effective for certain types of elements that do not respond to standard browser events.
- Navigate to the problematic step in the Test Detail page.
- Open the step's Advanced Settings.
- In the Executor settings, change the executor type to
Operating System.
- Use the Native JS Flag: For some elements, particularly complex ones like custom dropdowns, using a native JavaScript click can be more reliable.
- In the step's Advanced Settings, find the Executor settings.
- Enable the
Native JS flag.
- Enable the Positional Flag: If the click is intended to select an item from a list or dropdown, the Positional flag can help by targeting the item based on its position in the list rather than other attributes.
- In the step's Advanced Settings, enable the
Positional flag.
- In the step's Advanced Settings, enable the
Limitations
These solutions are workarounds for non-standard behavior in the application under test. The root cause often lies within the application's front-end implementation, which may not handle browser events in a typical way.
After applying one of these fixes, the test will proceed further than it did previously. This may reveal new failures in subsequent steps that were not reachable before. It is important to review the entire test flow after resolving a click issue to ensure all following steps are still valid.