Size: a a a

QA — Автоматизация

2019 September 28

i

iAmNOTaPleasureUnit in QA — Автоматизация
можем кто по аналогии дать приблизительный кусок кода для ходьбы на сайт с определённым айпишником и юзер агентом?
источник

VG

Vladimir Gumanyuk in QA — Автоматизация
iAmNOTaPleasureUnit
можем кто по аналогии дать приблизительный кусок кода для ходьбы на сайт с определённым айпишником и юзер агентом?
Вы либо что-то не совсем корректно сформулировали, либо хотите, чтобы за вас кто-то написал ВПН сервис.
Если вам надо проверить воздействие разных айпи/агентов, то либо играйтесь с ВПН, либо уговаривацте разрабов предоставить апи, по которому вы эти данные сможете передавать как параметры.
источник

A

Anton in QA — Автоматизация
Ilhom Parisi
Что я не правильно делаю?
мб несовместимость драйвера и браузера
источник

LY

Lev Yarushin in QA — Автоматизация
iAmNOTaPleasureUnit
можем кто по аналогии дать приблизительный кусок кода для ходьбы на сайт с определённым айпишником и юзер агентом?
Юзер агент можно задать при запуске браузера
https://stackoverflow.com/questions/29916054/change-user-agent-for-selenium-driver
источник

LY

Lev Yarushin in QA — Автоматизация
А вот чтобы нужный ip был - тут уже нужно с вашими коллегами обсуждать, как у них идёт определение ip адреса пользователя. Если к примеру через заголовки, то можно их подменить на нужные.
источник

LY

Lev Yarushin in QA — Автоматизация
Можно взять mitmproxy и ставить заголовки X-FORWARDED-FOR или REMOTE_ADDR с нужным ip
источник
2019 September 29

IP

Ilhom Parisi in QA — Автоматизация
Anton
мб несовместимость драйвера и браузера
да, дело оказался в версии вебдрайвера. вопрос решен. спасибо за внимание
источник

T

Tyrion in QA — Автоматизация
Всем привет
столкнулся с проблемой - не получается перейти по введенной url в окне алерта в браузере
т.е. задача заключается в том, чтобы не хардкодить url, а вводить ее прямо в браузере во время выполнения теста

в setUp метод класса BaseTest добавил следующий код:

try {
       JavascriptExecutor js = (JavascriptExecutor)driver;
       js.executeScript("var pr=prompt('Enter your URL please:',''); alert(pr);");
       Thread.sleep(15000L);
       String URL = driver.switchTo().alert().getText();
       driver.switchTo().alert().accept();

       driver.get(URL);
   } catch (Throwable e) {
       System.out.println("failed");
   }
       


однако после ввода URL не происходит перехода, в дебаге вижу что после строки
String URL = driver.switchTo().alert().getText();
 

выбрасывается сразу эксепшн
org.openqa.selenium.NoAlertPresentException: no such alert

хотя как мне казалось алерт был после ввода url

подскажите, что я делаю не так и как победить проблему?
источник

АН

Алексей Нагорский in QA — Автоматизация
Tyrion
Всем привет
столкнулся с проблемой - не получается перейти по введенной url в окне алерта в браузере
т.е. задача заключается в том, чтобы не хардкодить url, а вводить ее прямо в браузере во время выполнения теста

в setUp метод класса BaseTest добавил следующий код:

try {
       JavascriptExecutor js = (JavascriptExecutor)driver;
       js.executeScript("var pr=prompt('Enter your URL please:',''); alert(pr);");
       Thread.sleep(15000L);
       String URL = driver.switchTo().alert().getText();
       driver.switchTo().alert().accept();

       driver.get(URL);
   } catch (Throwable e) {
       System.out.println("failed");
   }
       


однако после ввода URL не происходит перехода, в дебаге вижу что после строки
String URL = driver.switchTo().alert().getText();
 

выбрасывается сразу эксепшн
org.openqa.selenium.NoAlertPresentException: no such alert

хотя как мне казалось алерт был после ввода url

подскажите, что я делаю не так и как победить проблему?
Возвращай результат алерта а не switchTo и прочее, как вариант
источник

T

Tyrion in QA — Автоматизация
Алексей Нагорский
Возвращай результат алерта а не switchTo и прочее, как вариант
пробовал с закомментированной строкой
//            driver.switchTo().alert().accept();
однако результат тот же
источник

T

Tyrion in QA — Автоматизация
Tyrion
пробовал с закомментированной строкой
//            driver.switchTo().alert().accept();
однако результат тот же
источник

T

Tyrion in QA — Автоматизация
Tyrion
пробовал с закомментированной строкой
//            driver.switchTo().alert().accept();
однако результат тот же
источник

АН

Алексей Нагорский in QA — Автоматизация
Tyrion
пробовал с закомментированной строкой
//            driver.switchTo().alert().accept();
однако результат тот же
А строку с getText?
источник

D

Dasha in QA — Автоматизация
источник

D

Dasha in QA — Автоматизация
Посмотрите это
источник

T

Tyrion in QA — Автоматизация
Алексей Нагорский
А строку с getText?
ее оставил, иначе я не смогу получить введенный url в окне алерта
источник

M

Manul in QA — Автоматизация
Tyrion
Всем привет
столкнулся с проблемой - не получается перейти по введенной url в окне алерта в браузере
т.е. задача заключается в том, чтобы не хардкодить url, а вводить ее прямо в браузере во время выполнения теста

в setUp метод класса BaseTest добавил следующий код:

try {
       JavascriptExecutor js = (JavascriptExecutor)driver;
       js.executeScript("var pr=prompt('Enter your URL please:',''); alert(pr);");
       Thread.sleep(15000L);
       String URL = driver.switchTo().alert().getText();
       driver.switchTo().alert().accept();

       driver.get(URL);
   } catch (Throwable e) {
       System.out.println("failed");
   }
       


однако после ввода URL не происходит перехода, в дебаге вижу что после строки
String URL = driver.switchTo().alert().getText();
 

выбрасывается сразу эксепшн
org.openqa.selenium.NoAlertPresentException: no such alert

хотя как мне казалось алерт был после ввода url

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

js.executeScript("var pr=prompt('Enter your URL please:',''); alert(pr);");


На что-нибудь типа такого, чтобы не пришлось извращаться со вторым алертом.

String url = js.executeScript("return prompt('Enter your URL please:','');");


Там, возможно, ещё нужно сделать приведение к типу, но я не знаю, как это на Java делать.
источник

АН

Алексей Нагорский in QA — Автоматизация
Tyrion
ее оставил, иначе я не смогу получить введенный url в окне алерта
Да у тебяж есть pr
источник

BO

Boris Osipov in QA — Автоматизация
Tyrion
Всем привет
столкнулся с проблемой - не получается перейти по введенной url в окне алерта в браузере
т.е. задача заключается в том, чтобы не хардкодить url, а вводить ее прямо в браузере во время выполнения теста

в setUp метод класса BaseTest добавил следующий код:

try {
       JavascriptExecutor js = (JavascriptExecutor)driver;
       js.executeScript("var pr=prompt('Enter your URL please:',''); alert(pr);");
       Thread.sleep(15000L);
       String URL = driver.switchTo().alert().getText();
       driver.switchTo().alert().accept();

       driver.get(URL);
   } catch (Throwable e) {
       System.out.println("failed");
   }
       


однако после ввода URL не происходит перехода, в дебаге вижу что после строки
String URL = driver.switchTo().alert().getText();
 

выбрасывается сразу эксепшн
org.openqa.selenium.NoAlertPresentException: no such alert

хотя как мне казалось алерт был после ввода url

подскажите, что я делаю не так и как победить проблему?
>т.е. задача заключается в том, чтобы не хардкодить url, а вводить ее прямо в браузере во время выполнения теста

зачем? зачем такая наркомания?
источник

T

Tyrion in QA — Автоматизация
Boris Osipov
>т.е. задача заключается в том, чтобы не хардкодить url, а вводить ее прямо в браузере во время выполнения теста

зачем? зачем такая наркомания?
зачем - это уже другой вопрос) таковы требования тестового задания. Мне проще было бы все в конфиге прописать, но требуют именно так
источник