Прошу не судить строго. Но я уже провел достаточно времени в поисках решения проблемы, но увы - так ничего внятного нет на просторах интернета. Так что, уважаемые форумчане, может кто-нибуть поможет.
Суть проблемы: Есть браузер, в нем контент. Нужно отобразить его содержимое в другом браузере с сохранением функционала. Пример: Есть IE (назовем его ИЕ1). Нужно отобразить его контент в другом IE (ИЕ2), с сохранение всей функциональности. Т.е. кликая в ИЕ2, действия должны происходить в ИЕ1, с синхронизацией контента в обоих.
Где это применимо: Например там, где на прямую доступа к ИЕ1 нет.
Очень хорошим примером являеться работа с add-in в MS Office 2016 (десктопная версия). Там add-in является небольшим приложением, которое загружается во фрейм и работает в песочнице Office. По сути своей add-in это приложение написанное на javascript. В процессах этот фрейм отображается как IE.
Что было сделано:
Пытался приконектится через watir - не вышло, т.к. он не может коннектится к процессам
Через аппиум не подходит - он не может выполнять js скрипты в этом приложении
Через разного рода утилиты: F12 chooser, IEDiagnosticsAdapter - не вышло, это только дебаг, а мне не то надо.
Ремарка: Пишу на java. Есть тесты для вэб версии.
Буду признателен за любые, даже самые безумные идеи.
Заранее спасибо всем.
Это, на сколько я понял, просто vnc клиент. Как мне его приспособить под браузер?
Поясню. Мне нужно приконектиться к браузеру. Не к удаленной машине, а именно к, грубо говоря, удаленному браузеру.
Если вы хотите чтобы в браузере можно было управлять другим браузером, то я
не представляю как этого достичь без использования VNC-подобных решений.
Есть вариант использования такой штуки как RemoteApp если OS - Windows
Для Linux можно сделать VNC для одного приложения.
Как вариант, попытаться настройками IE добиться, чтобы IE2 открывался в другой табе, а не в другом окне?
В этом случае переключить табу средствами селениума реально.
Не знаю, насколько реализуемо в IE. В старом FF вроде как можно было.
Ещё, как вариант, гляньте вот это
Там в ответах есть примеры кода на Java и Python, как это реализовать.
Предлагаю безумную идею.
Оттолкнемся от обратного, почему разные браузеры запущенные на одном компьютере могут отображать разные сайты не смешивая информацию?
ip адрес
порт
куки(сессия)
Пункты 1 и 2 на одной машине совпадают(если руками не настроено иное)
Остается сессия
то есть, если получится синхронизировать сессии контент будет отображаться одинаковый
Возможно(если глубоко копнуть) selenium grid на такое способен