Мне нужно создать автоматизированные тесты для приложения Silverlight, я использую пространство имен System.Windows.Automation.Моя проблема заключается в следующем:
Я использую AutomationElement.FindFirst, чтобы найти элементы пользовательского интерфейса в дереве пользовательского интерфейса:
AutomationElement toBeInvoked = browser.FindFirst(TreeScope.Descendants,
new PropertyCondition(AutomationElement.AutomationIdProperty, id));
Это работает в течение нескольких шагов, но после этого ничего не находит,Я проверил, что после изменения экрана дерево пользовательского интерфейса будет пустым, UISpy видит только элемент управления Silverlight, но не более того: снимок экрана .(Я также пытался использовать TreeWalker, но результат был тот же.) Если я нажимаю вручную и проверяю элементы с помощью UISpy, все в порядке.Но когда я запускаю свой код, он останавливается (обычно на той же кнопке).
Позже я понял, что если я нажимаю вручную на экранах, которые посетит мой код, и после того, как я его выполню, не будетбыть любой проблемой ... странно.Я пробовал это в FF 3.6, 4.0 и IE8.Проблема одинакова во всех браузерах.
Кто-нибудь знает, что может быть не так или где может быть ошибка?Я что-то пропустил в своем коде, или проблема в настройках браузера?
Заранее спасибо, с уважением,
Miklos