В ходе разработки в приложении появился "спиннер" и как результат задача подождать пока он исчезнет, что бы нажать на нужный элемент.
В коде он выглядит так:
Элемент я нашла.
[FindsBy(How = How.XPath, Using = “//mat-progress-spinner//descendant-or-self::*[3]”)]
Реализация ожидания ниже.
internal static void WaitForLoading()
{
var commonElements = new CommonElements();
while (string.IsNullOrWhiteSpace(commonElements.divLoader.GetAttribute("circle")))
PropertiesCollection.Driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(15);
;
}
Но увы:
Message: System.Reflection.TargetInvocationException : Exception has been thrown by the target of an invocation.
----> OpenQA.Selenium.StaleElementReferenceException : stale element reference: element is not attached to the page document
можно как в селениде написать метод, который рекурсивно проверять наличие класса hidden у элемента, на который вы стрелкой указали, в течение какого времени