Я выполняю такие шаги в автоматическом тестовом случае:
- Вход в приложение
- Переключение на фрейм с заголовком «Главное меню» (пример)
- Выберите и щелкните нужный элемент из: «Главное меню> Подменю 1> Подменю 2> Поиск»: при нажатии «Поиск» открывается новое дочернее окно с собственным URL-адресом. Щелчок «Поиск» также изменяет фрейм в фоновом режиме, вызывает перезагрузку страницы, и поэтому «Главное меню» превращается в «Подробное меню».
- Когда какой-либо идентификатор задан в дочернем окне и кнопка поиска в дочернем окнеЕсли щелкнуть мышью, дочернее окно будет закрыто, а «Детальное меню» будет обновлено информацией для этого конкретного идентификатора.
Проблема:
Когда драйвер IE (версия 3.14.0.0)нажимает кнопку поиска в «Основном меню> Подменю 1> Подменю 2> Поиск», после чего открытое дочернее окно не содержит всей информации. Похоже, что все в порядке, но после просмотра его свойств, URL указывает, что это пустая HTML-страница. Поскольку оно пустое / отключено, я не могу переключиться на него, найти какой-либо элемент или нажать любую кнопку.
Мне удалось выполнить вышеупомянутые шаги теста с ChromeDriver, но тест должен быть выполнен с использованием драйвера IE (требования приложения).
Я также попытался настроить возможности драйвера IE, как указано в: Как я могу запустить InternetExplorerDriver с помощью Selenium WebDriver , но я не могу изменить какие-либо параметры безопасности Internet Explorer, потому что эти параметры отключены.
Я заметил, что когда я использую следующий код после того, как драйвер выполняет «Главное меню> Подменю 1> Подменю 2> Поиск»:
foreach (var process in Process.GetProcessesByName("IEDriverServer"))
{
process.Kill();
}
Тогда дочернее окно становится полностью работоспособным, но изСессия драйвера курса окончена, поэтому я все равно не могу перейти к более поздним шагам.
Вопрос:
Есть ли способ приостановить процессы драйвера после того, как он выполнит щелчок, подождите, пока дочернее окно не будетполностью загружен, затем возобновить процессы, чтобы он мог переключиться на дочернее окно и т. д.? Если нет, то есть ли способ прикрепить это окно к текущей сессии браузера?