Перейти к содержимому

sashikus

Регистрация: 22 сен 2011
Offline Активность: 16 окт 2018 15:48
-----

Мои темы

WebDriver + Thucydides + POST requests

26 февраля 2014 - 12:43

Здравствуйте,

 

столкнулся с проблемой следующего характера:

 

есть несколько текстбоксов на странице,в них вводится информация, после этого нажимается кнопка "сабмит".

 

и на сервер отправляется POST, но селениум не работает с ПОСТ.

 

Нашел информацию по HttpClient, но не могу понять,как передавать параметры в пост запрос и выполнять его после этого.

 

вот пример строки с параметрами:

 

URL?hascardreader=0&device_id=&product=prod_value&quantity_product1=1&quantity_product2=1&paymethod=BANK_TRANSFER&different_shippingaddress=1

 

нашел вот какой вариант,но не знаю,как туда вписать параметры

 

org.apache.http.client.HttpClient client = new DefaultHttpClient();
        HttpPost post = new HttpPost(URL);

        List<NameValuePair> urlParameters = new ArrayList<NameValuePair>();
        urlParameters.add(new NameValuePair("",""));
        urlParameters.add(new NameValuePair("",""));
        urlParameters.add(new NameValuePair("",""));
        urlParameters.add(new NameValuePair("",""));


        post.setEntity(new UrlEncodedFormEntity(urlParameters));
        HttpResponse response = client.execute(post);

 

 

буду признателен за совет и пример,как реализовать это.

 

спасибо


Basic Authentication Window + WebDriver + Thucidides

03 февраля 2014 - 09:46

Здравствуйте,

 

selenium WebDriver  v.2.39.0 + Thucidides

 

 

у меня следующий вопрос:

 

- при загрузке приложения выводиться окошко Basic Authority с запросом пароля и логина

я решил это пока для FF следующим образом

 

 

    @Managed
    public WebDriver webDriver;

   @ManagedPages
    public Pages pages;

 

    public void openMainPage(){
        webDriver.get("https://" + CONNY_LOGIN + ":" + CONNY_PWD + "@"
                + baseUrl + "/");
        webDriver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
        webDriver.manage().window().maximize();
    }

 

все работает хорошо

 

- в процессе тестов необходимо нажать кнопку и перейти на другую страниц(она на другом сервере) и опять запрашивается эта авторизация уже с другими данными для новой страницы.

пытался сделать

 

так же

 

loginPage.click();

webDriver.get("https://" + LoginPage_LOGIN + ":" + LoginPage_PWD + "@"
                + loginUrl + "/");
        webDriver.manage().timeouts().implicitlyWait(15, TimeUnit.SECONDS);
        webDriver.manage().window().maximize();

 

не срабатывает, тест останавливается на новом открытом окошке авторизации.

 

Буду признателен за помощь,как решить вопрос с повторной авторизацией для другого адреса

 

Спасибо