Как мне обработать аутентификацию прокси с помощью Selenium, используя Java? - PullRequest
0 голосов
/ 10 февраля 2020

How do I handle this on Selenium using Java

Я пробовал этот код, но я ничего не делаю. Возможно, потому что он не обрабатывает такого рода предупреждения.

driver.switchTo().alert().sendKeys("asd");
// Handling Password alert
driver.switchTo().alert().sendKeys("asd");
driver.switchTo().alert().accept();

Я что-то здесь упускаю? Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 10 февраля 2020

Вы можете сделать это, используя Java класс роботов.

//set first variable in system clipboard
            StringSelection variable1 = new StringSelection("username");
            Toolkit.getDefaultToolkit().getSystemClipboard().setContents(variable1,null);

            //use robot class to paste the content
            Robot r = new Robot();
            r.keyPress(KeyEvent.VK_CONTROL);
            r.keyPress(KeyEvent.VK_V);
            r.keyRelease(KeyEvent.VK_V);
            r.keyRelease(KeyEvent.VK_CONTROL);

            //use robot class to enter tab, so the focus will be shifted in to next field
            r.keyPress(KeyEvent.VK_TAB);
            r.keyRelease(KeyEvent.VK_TAB);

            //set second variable in system clipboard
            StringSelection variable2 = new StringSelection("password");
            Toolkit.getDefaultToolkit().getSystemClipboard().setContents(variable2,null);

            //use robot class to paste the content
            r.keyPress(KeyEvent.VK_CONTROL);
            r.keyPress(KeyEvent.VK_V);
            r.keyRelease(KeyEvent.VK_V);
            r.keyRelease(KeyEvent.VK_CONTROL);

используйте класс роботов, чтобы нажать вкладку, поэтому фокус будет смещен в следующее поле, если кнопка «ОК», используйте класс роботов. чтобы ввести ключ ввода еще раз, используйте вкладку

            r.keyPress(KeyEvent.VK_TAB);
            r.keyRelease(KeyEvent.VK_TAB);

            r.keyPress(KeyEvent.VK_ENTER);
            r.keyRelease(KeyEvent.VK_ENTER);
...