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