У меня проблемы с определением всплывающего окна, чтобы справиться с этим.Вот что я попробовал:
string dialog4;
string dialog5;
try
{
IAlert alert = driver.SwitchTo().Alert();
dialog4 = alert.Text;
alert.Accept();
dialog5 = "nothing alert";
}
catch (NoAlertPresentException f)
{
try
{
dialog4 = driver.SwitchTo().Frame(0).Title;// "dialog4";//
dialog5 = driver.SwitchTo().Frame(1).Title;// "dialog5";//
}
catch (NoSuchFrameException e)
{
try
{
dialog4 = driver.SwitchTo().Window("iHTKK").Title;
dialog5 = "nothing window";
}
catch
{
dialog4 = "nothing 4";
dialog5 = "nothing 5";
}
}
}
- Код ждет 10 секунд, а веб-привод ждет 30 секунд после нажатия красной кнопки, чтобы убедиться, что всплывающее окно успело быть пойманным.
- И код возвращает «ничто 4» и «ничто 5».
- xPath не очень хорошо работает в этом проекте, я не знаю почему, но раньше я пробовал с разными элементамино xPath не работают.
- Я не могу открыть F12, если я не отвечу на это всплывающее окно.Я мог бы открыть его до и после существования этого всплывающего окна .
- Я также попытался найти на веб-сайте (все файлы HTML и .js) информацию во всплывающем окне, используяфункция поиска в инструменте разработчика (F12) на вкладках Debugger и Dom Explorer.Ничего не найдено.Это не мой веб-сайт.
- Я прикрепил снимок экрана с помощью Windows Spy (утилита поставляется с AutoHotkey, помогая идентифицировать окна).Всплывающее окно было создано с помощью вызова процесса "jp2lancher.exe".Моя версия Java - 8.x 32 бит, если это вызывает озабоченность.Хотя кажется, что всплывающее окно происходит из другого процесса, я не могу взаимодействовать с IE, пока не отвечу на это всплывающее окно.Тем не менее, я могу закрыть его с помощью действия «Закрыть все окна» на панели задач, и всплывающее окно все еще будет существовать.
Что еще можно сделать, чтобы идентифицировать это всплывающее окно? ![Pop-up screen shot](https://i.stack.imgur.com/hFSPm.png)