Это теоретически возможно, но не совсем так, как вы это описываете.Вы, кажется, говорите, что хотите взаимодействовать с вещами в окнах RDP, как если бы окно RDP было стандартным браузером или собственным приложением, а вещи внутри него были элементами в DOM.Запустив селен на хост-машине, затем открыв RDP и щелкнув в окне RDP с исходного хост-компьютера.
Невозможно подключиться таким образом (таким образом, как этого требует)прямо через RDP.Если ни по какой другой причине, кроме безопасности.Например;Если вы когда-нибудь видели, как люди на youtube заражают виртуальные машины сумасшедшими вирусами, чтобы продемонстрировать разрушительное воздействие вируса на виртуальную машину, не повреждая компьютер, с которого они были включены в RDP.Но, похоже, существуют способы связи по TCP-соединениям через RDP, которые облегчили бы другие способы взаимодействия с удаленной машиной.
Кроме того, вы можете просто подключить SSH / Enter-PSSession к машине и настроитьканал связи между машинами вне сеанса RDP.Если на вашем компьютере было удалено приложение, созданное на заказ, вы могли бы использовать библиотеки System32, чтобы сообщать на основном компьютере координаты xy вещей, по которым нужно щелкнуть.Затем с основного компьютера вы можете развернуть окно RDP и щелкнуть на предоставленных координатах XY.
Я подозреваю, что это успешно отправит щелчок на всем протяжении вплоть до ВМ, как выпредлагаю.Если Appium не может отправить щелчок вниз таким способом, вам может потребоваться разработать собственную абстракцию user32.dll для выполнения кликов, используя основную логику Windows для клавиатур и щелчков мыши.
В общем, этобезумно глубокий проект, который (казалось бы) ничего не дает для усилий.Я хотел бы отречься от того, кто дает вам это требование, исследуя некоторые из вещей, которые я упомянул выше (вместе с любыми другими советами), и объясняя стоимость по сравнению с возвратом инвестиций.
Надеюсь, они простоПозвольте вам использовать Selenium Grid для связи с виртуальными машинами или подключенными устройствами, чтобы выдвигать приложения и тестировать их с учетом отраслевых стандартных подходов.
Вот интересное и уместное чтение: https://superuser.com/questions/130552/tunneling-a-tcp-ip-connection-through-remote-desktop-connection