Как создать сеанс для Run Dialog в Appium? - PullRequest
0 голосов
/ 12 июня 2019

Используя команду powershell, я могу получить идентификатор программы run dialog, который равен Microsoft.Windows.Shell.RunDialog.Тем не менее, я не могу заставить это работать с кодом ниже.Есть идеи?

DesiredCapabilities desktopCapabilities = new DesiredCapabilities();
desktopCapabilities.SetCapability("app", "Microsoft.Windows.Shell.RunDialog");
desktopCapabilities.SetCapability("deviceName", "WindowsPC");
desktopCapabilities.SetCapability("platformName", "Windows");

session = new WindowsDriver<WindowsElement>(new Uri("http://127.0.0.1:4723"), desktopCapabilities);

1 Ответ

1 голос
/ 12 июня 2019

Посмотрите на ответы из этого сообщения о диалоге запуска.Я думаю, что winappdriver вызывает rundll32.exe, и это не само диалоговое окно.

Вы можете попытать счастья, изменив эту строку

desktopCapabilities.SetCapability("app", "Microsoft.Windows.Shell.RunDialog");

на

desktopCapabilities.SetCapability("app", "c:\windows\system32\rundll32.exe shell32.dll,#61");

В качестве альтернативы, вы можете получить сеанс рабочего стола и отправить ему «ключ Windows + R». Здесь - это способ получить сеанс рабочего стола.

...