TestStack/White API

Я пытаюсь автоматизировать приложение, используя TestStack/White API (который основан на библиотеке автоматизации пользовательского интерфейса Microsoft).

Проблема заключается в следующем:

В определенный момент автоматизации мне приходится иметь дело с окном "Диалог", которое выглядит как отдельный процесс, если я смотрю на "Диспетчер задач Windows". Но как бы я ни пытался получить доступ к "Диалоговому окну" (Class, ID, Text, ControlType и т. Д.), Я не могу получить к нему доступ.

Вы можете найти изображение и код UISpy ниже...

Использование UISpy - информация о диалоге

using (var DISCLAIMER_App = Application.Attach(@"PathToExecutable"))
                    using (var DISCLAIMER_Window = DISCLAIMER_App.GetWindow(SearchCriteria.ByClassName("#32770"), InitializeOption.NoCache))
                    {
                        var IAccept_button = DISCLAIMER_Window.Get<Button>(SearchCriteria.ByText("I accept"));
                        IAccept_button.Click();
                    } 
# I've tried also Application.Launch, Application.AttachOrLaunch.
# I also looked to be sure that the Dialog window is a separated process and doesn't belong to any parent window.

Какие-либо предложения?

1 ответ

Нашел решение, должен был использовать "ProcessStartInfo()" и передать возвращаемые данные в "Application.AttachOrLaunch()":

 var psi = new ProcessStartInfo(@"PathToExecutable");
 using (var DISCLAIMER_App = Application.AttachOrLaunch(psi))

Источник: http://techqa.info/programming/tag/white?after=24806697

Другие вопросы по тегам