С#: TestStack.White не удается захватить объект с SearchCriteria.ByAutomationID, предоставленным Inspect.exe

Я использую TestStack.White для автоматизации тестирования существующего приложения.

Я получил определенный AutomationID "example_ID" для элемента с помощью Inspect.exe, однако при использовании
var something = window.Get(SearchCriteria.ByAutomationId("example_ID");

он говорит, что не удалось получить элемент с данным идентификатором. Любой указатель будет полезен.


person Aditya Basak    schedule 07.03.2018    source источник
comment
Не могли бы вы добавить все, что вы пробовали, и/или другие критерии поиска, которые вы могли бы использовать?   -  person Rescis    schedule 09.03.2018
comment
Скриншот inspect.exe был бы очень полезен для определения того, почему он не может найти элемент.   -  person Max Young    schedule 10.03.2018
comment
ваш элемент виден? не ниже чего-то еще или вне сферы действия, верно?   -  person Francesco B.    schedule 29.03.2018
comment
У меня такая же проблема. При нажатии на кнопку добавления рядом с ней появляется панель всплывающего меню, но я не могу захватить и щелкнуть элемент меню внутри   -  person Suhaib Ahmad    schedule 10.04.2018


Ответы (1)


Выполняется ли ваш код автоматизации с теми же привилегиями, что и ваш экземпляр Inspect.exe? Возможно, у него нет доступа к графическому интерфейсу, который вы хотите автоматизировать:

https://docs.microsoft.com/en-us/windows/security/threat-protection/security-policy-settings/user-account-control-allow-uiaccess-applications-to-prompt-for-повышение-без-использования-защищенного-рабочего-стола указывает: «Однако могут быть случаи, когда пользователь с правами администратора запускает приложение с повышенными привилегиями на основе UAC в режиме одобрения администратором. Microsoft UI Automation не может управлять графикой пользовательского интерфейса приложений с повышенными правами на рабочем столе без возможности обойти ограничения, которые реализует UIPI».

person RuNe    schedule 21.01.2019