Я получаю исключение устаревшей ссылки (Элемент больше не действителен), я использую c # - Webdriver для автоматизации.
Я использую Selenium для инфраструктуры автоматизации.В этом я использовал EventFiringWebDriver класс Selenium Event.который слушает каждое событие InterenetExplorerWebdriver (например, Click () или SendKeys ()).В событиях класса EventFiringWebDriver, таких как (ElementClicked, ElementValueChanged), я реализовал логику, которая записывает атрибуты объекта WebElementEventArgs в файл журнала на основе XML.поэтому в конце выполнения я вижу подробности выполнения каждого теста в формате XSLT и отслеживаю функциональные ошибки.
код: -
public class SeleniumEventListener : EventFiringWebDriver
{
public SeleniumEventListener(IWebDriver webDriver):base(webDriver)
{
ElementClicked += new EventHandler<WebElementEventArgs>SeleniumEventListener_ElementClicked);
//more events handled here..
}
void SeleniumEventListener_ElementValueChanged(object sender,WebElementEventArgs e)
{
LogPassedStep(e)
}
private LogPassedStep(e)
{
string title = e.Element.value;
string status = "clicked"
//XML based logging here.
}
}
В моем приложении, которое я автоматизирую с помощью селена.У меня есть несколько текстовых полей и кнопок, класс XMLLogging EventFiringWebDriver корректно работает для текстовых полей во время выполнения тестового примера, но для кнопок или ссылок в некоторых случаях он дает исключение устаревшей ссылки «Элемент больше не действителен» (некоторые кнопкитипа Развернуть коллапс, который вызывает изменение DOM, и в моем приложении у меня есть страница Задача, которая обновляется с регулярным интервалом, в котором часто встречается исключение устаревшей ссылки)
Щелчки Webdriver работают правильно во время выполнения, ноEventFiringWebDriver не может распознать объект, и возникает исключение ссылки Stale
Пожалуйста, помогите мне ... или, пожалуйста, предложите мне способ получить эту информацию об объектах веб-страницы (таких как кнопка, ссылка), чтобы я мог реализовать функцию ведения журнала(Я использую C # -webdriver) /