Как обойти Google reCAPTCHA для тестирования с использованием Selenium - PullRequest
0 голосов
/ 22 мая 2018

Я использую Selenium для тестирования моего веб-приложения на базе Spring.Можете ли вы предложить решение для обхода Google reCAPTCHA при тестировании приложения.

Я запускаю тестирование автоматизации в этой среде.Поэтому ручная проверка «Я не робот» в reCAPTCHA невозможна.

Для целей тестирования я использую тестовый ключ в своей среде тестирования, указанной в расположении ниже.

Ключ тестирования Google reCAPTCHA

enter image description here

Я использую Angular 5 в качестве внешнего интерфейса моего приложения.Я использую библиотеку ng-recaptcha для добавления reCAPTCHA в пользовательский интерфейс.

Ответы [ 3 ]

0 голосов
/ 25 мая 2018

Вы можете сделать это, найдя координаты x и y флажка в reCAPTCHA и щелкнув по элементу.

WebElement captcha = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/form/div[5]/div"));
        builder.moveToElement(captcha, 50, 30).click().build().perform();
0 голосов
/ 24 декабря 2018

Вы должны «переключить» драйвер на iFrame, чтобы точно установить флажок reCaptcha.Команды:

WebElement iFrame = driver.findElement(By.xpath("xpath_of_reCaptcha_iFrame"));
driver.switchTo().frame(iFrame);

// Теперь можно установить флажок reCaptcha.

WebElement iFrame_checkbox = 
driver.findElement(By.xpath("xpath_of_reCaptcha_checkbox"));
iFrame_checkbox.click();
0 голосов
/ 22 мая 2018

Я не знаю вашего точного кода, но вы должны иметь возможность запускать свой сервер с системным свойством или каким-либо флагом, который указывает, что reCaptcha должен быть отключен и не добавлять его в форму в первую очередь.

...