Before it was checked if the new user form was visible, but it was not
waited for it. It seems that it can happen that the new user form is in
the DOM, and therefore found, but not visible yet when the tests run,
which caused them to (randomly) fail. Due to that now it is explicitly
waited until it is visible, rather than assuming that it is visible as
soon as it appears in the DOM.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
* @Then I see that the new user form is shown
*/
public function iSeeThatTheNewUserFormIsShown() {
- Assert::assertTrue(
- $this->actor->find(self::newUserForm(), 10)->isVisible());
+ if (!WaitFor::elementToBeEventuallyShown(
+ $this->actor,
+ self::newUserForm(),
+ $timeout = 10 * $this->actor->getFindTimeoutMultiplier())) {
+ Assert::fail("The new user form is not shown yet after $timeout seconds");
+ }
}
/**