Click
does also wait for visibility and actionability.
As Wait For Elements State
does.
So that should not really make a difference.
I know that some pages do register the onclick
event after the element has been created. These elements were already visible and enabled. But at that time, they appear, the are not doing anything.
And because Browser lib is really fast, it is faster that the poorly implemented code
However, what may help is either Wait Until Network Is Idle
which waits until all data are transferred from the server + 500ms or you could maybe (never tested) fetch the onclick
property of the button and wait for it containing anything.
That could be done by Wait For Condition
with Property
But I actually do not know, what property it has before or after being actually doing something.
But you could try to call in a WHILE loop for 2 seconds Get Property <selector> onclick
and log it.
Maybe you can debug it.