En Selenium Webdriver, ExpectedCondition.elementToBeClickable no está esperando hasta que desaparezca la barra de progreso

Esta pregunta es similar a la siguiente:
es decir, cómo esperar hasta que desaparezca la barra de progreso.
¿Cómo esperar dinámicamente hasta que la barra de progreso se cargue completamente en Selenium Webdriver?

El mío es un poco diferente. Aquí, cuando aparece la barra de progreso, todos los elementos están deshabilitados. Así que estoy usando la espera explícita pero aún obtengo la excepción.

Guión: En la página de registro, después de proporcionar todos los detalles, el script hace clic en el botón "Crear cuenta". En este instante, aparece una barra de progreso circular y persiste durante 1 o 2 segundos, si la contraseña ingresada no es válida (solo estoy validando con contraseñas no válidas), se muestra un mensaje de error en la parte superior de la página de registro. Ahora necesito hacer clic en el botón "Cancelar" y repetir el proceso.

Cuando aparece la barra de progreso, se deshabilitará toda la página. Solo después de la desaparición de la barra de progreso, el usuario podrá continuar.

He escrito código para el mismo usando WebDriverWait como a continuación:

WebDriverWait myWaitVar = new WebDriverWait(driver,20);

Después de hacer clic en el botón "Crear cuenta", aparece la barra de progreso y estoy esperando hasta que aparezca el botón cancelar.

//Click on Create Account btn:
driver.findElement(By.id("createAccount")).click();

//Wait till "Cancel" button is showing up. At cases, it may take some time.
myWaitVar.until(ExpectedConditions.elementToBeClickable (By.id("cancelRegister")));

//click on Cancel btn:
driver.findElement(By.id("cancelRegister")).click();

Cuando ejecuto el código anterior, cada vez que obtengoNoSuchElementException En la última línea.

Lo intenté conExpectedCondition.visibilityOfElement() pero aquí también me estoy poniendoNoSuchElementException.

Luego intenté usar el método del sueño en lugar de esperar.

Thread.sleep(3000);

Ahora el script está funcionando bien.

No pude entender por quéWebDriverWait ¿No esperaste a que desapareciera la barra de progreso?

Ha analizado con éxito elelementToBeClickable() pero aún arrojando excepciones, cuando hacemos clic en él.

Respuestas a la pregunta(2)

Su respuesta a la pregunta