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

Публикации yulia_st

25 публикаций создано yulia_st (учитываются публикации только с 25 апреля 2023)


#138161 Клик по динамической ссылке

Отправлено автор: yulia_st 09 января 2015 - 15:39 в Selenium - Functional Testing

покажите кусок хтмл




#135710 Как добавить в запускаемый браузер custom ssl certificate?

Отправлено автор: yulia_st 21 октября 2014 - 11:41 в Selenium - Functional Testing

собственно, сабж. как при старте бразуера сделать так, чтобы у него уже был добавлен ssl certificate?




#134002 Получить response on action

Отправлено автор: yulia_st 09 сентября 2014 - 09:32 в Selenium - Functional Testing

Ну например подключив Browser Mob Proxy

если у Вас есть опыт работы с Browser Mob Proxy, не составит ли Вам труда подсказать как обойти ошибку при переходе по https, и каким методом получить респонс?

заранее благодарна!




#133975 Получить response on action

Отправлено автор: yulia_st 08 сентября 2014 - 14:50 в Selenium - Functional Testing

Получить респонс на какое-либо действие мы можем в Network console, когда ручками тестируем в браузере.
Как сделать то же самое с помощью веб-драйвера?




#133741 Как получить локаторы элементов в окне аутентификации

Отправлено автор: yulia_st 02 сентября 2014 - 12:39 в Selenium - Functional Testing

 

 

http://username:pass...ite.address.com




#133636 Как обратиться к одному элементу блока, идентифицировав его по другому

Отправлено автор: yulia_st 28 августа 2014 - 13:33 в Selenium - Functional Testing

 

//div[@class='contact-header'][contains(.,'username')]//div[contains(@class,'contact-action')]//div/a

Ну тут тогда требуются пояснения. Меня лично смущает

][

этот момент. Ну еще:

[contains(.,'username')]

Хотя это больше от незнания XPath наверное. А вообще что-то подобное имеет право на жизнь

 

 

ничего смущать тут не должно. условия выборки могут быть сложные, как в первом div'e.

 

//div[@class='contact-header'][contains(.,'username')]   - мы выбираем родительский div 'contact-header', который где-либо в своих дочерних элементах содержит значение username, но в то же время обращаемся к другому дочернему //div[contains(@class,'contact-action')] который Вам необходим по условию.

 

Вы пробовали использовать этот xpath? 




#133457 Как обратиться к одному элементу блока, идентифицировав его по другому

Отправлено автор: yulia_st 22 августа 2014 - 14:16 в Selenium - Functional Testing

//div[@class='contact-header'][contains(.,'username')]//div[contains(@class,'contact-action')]//div/a




#132854 JS вернуть текст алерта

Отправлено автор: yulia_st 01 августа 2014 - 14:32 в Selenium - Functional Testing

 

всегда так делаю

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

 

только сейчас подумалось мне, что возможно о разных алертах говорим.

в моем проекте "алерты" не джаваскриптовые и имеют полноценную хтмл разметку.

пардон.




#132848 JS вернуть текст алерта

Отправлено автор: yulia_st 01 августа 2014 - 12:58 в Selenium - Functional Testing

 

у title есть xpath.находим элемент по xpath и точно так же вызывается метод getText() для title;

Ой-ли. Вы так пробовали?

 

всегда так делаю




#132837 JS вернуть текст алерта

Отправлено автор: yulia_st 01 августа 2014 - 08:26 в Selenium - Functional Testing

driver.switchTo().alert().getText();

А титл не вернуть, стандартных средств нет.

у title есть xpath.находим элемент по xpath и точно так же вызывается метод getText() для title;




#132554 Проблемы с методом Actions#doubleClick

Отправлено автор: yulia_st 24 июля 2014 - 13:10 в Selenium - Functional Testing

Не помогло. Всё равно спасибо.

покажите свой код




#132543 Проблемы с методом Actions#doubleClick

Отправлено автор: yulia_st 24 июля 2014 - 09:55 в Selenium - Functional Testing

Давайте, можно попробовать ваш вариант.

 

public boolean doubleClick(String xpath) {
        try {
            WebElement webElement = driver.findElement(By.xpath(xpath));
            Actions builder = new Actions(driver);
            if (webElement == null) {
                return false;
            }
            builder.moveToElement(webElement).doubleClick().build().perform();
            return true;
        } catch (Exception e) {
            return false;
        }
}



#132538 Проблемы с методом Actions#doubleClick

Отправлено автор: yulia_st 24 июля 2014 - 09:46 в Selenium - Functional Testing

    

могу поделиться кодом дабл клика на джаве, если подойдет.




#132501 Элементы с одинаковыми классами. Как выбрать определенный?

Отправлено автор: yulia_st 23 июля 2014 - 13:43 в Selenium - Functional Testing

К первому //div[contains(@class, 'form-row-indented')]//label[1]//input

Ко второму //div[contains(@class, 'form-row-indented')]//label[2]//input




#131788 PhantomJS не видит элементы на странице

Отправлено автор: yulia_st 02 июля 2014 - 13:05 в Selenium - Functional Testing

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




#131782 PhantomJS не видит элементы на странице

Отправлено автор: yulia_st 02 июля 2014 - 12:04 в Selenium - Functional Testing

собственно, сабж. при запуске тестов в хроме и ФФ, все работает безукоризненно. подключила фантом. сразу же на логин форме валится тест, фантом не видит полей.

поля я ищу по xpath.

 

[ERROR - 2014-07-02T12:29:47.634Z] WebElementLocator - _handleLocateCommand - Element(s) NOT Found: GAVE UP. Search Stop Time: 1404304187551




#130521 Установить значение для input

Отправлено автор: yulia_st 19 мая 2014 - 07:34 в Selenium - Functional Testing

Сначала кликнуть в поле, потом очистить его, а потом ввести информацию.

тоже пробовала. не очищается.




#130517 Установить значение для input

Отправлено автор: yulia_st 19 мая 2014 - 07:20 в Selenium - Functional Testing

Ищите "правильный" элемент. Если "текущее значение" содержится в хидден инпуте, это не значит что вы должны менять его вэлью.
Даже если вам это удастся (через js например) - это не будет гарантировать адекватное поведение системы на данный хак.

по хтмл нахожу само поле, но оно не ведет себя как инпут. sendKeys() не срабатывает.




#130505 Установить значение для input

Отправлено автор: yulia_st 19 мая 2014 - 06:36 в Selenium - Functional Testing

Есть на странице pop-up, который содержит в себе дроп-даун лист с опциями. Кроме того само поле текущего значения этого дроп-даун листа может редактироваться. т.е. пользователь может ввести любые данные, помимо находящихся в списке.

в ходе автоматизация возникла проблема поиска самого input'a.

текущее значение содержится в:

<input type="hidden" name="value" value="true">

 

Вопрос: могу ли я каким-то образом средствами WebDrivera засетить value="someTextForText" ?




#130504 Как проверить отсутствие элемента на странице?

Отправлено автор: yulia_st 19 мая 2014 - 06:33 в Selenium - Functional Testing

решила проблему таким способом:

 

public boolean elementIsNotPresent(String xpath){
       return driver.findElements(By.xpath(xpath)).isEmpty();

}

 

спасибо за ответы :)




#130467 Как проверить отсутствие элемента на странице?

Отправлено автор: yulia_st 16 мая 2014 - 09:28 в Selenium - Functional Testing

В ходе теста нужно проверить что элемент отсутствует на странице.

Как я поняла нельзя использовать конструкцию вида:

if (driver.findElement(By.xpath("someXpath")).isDisplayed == false)

 

как можно решить сию проблему?




#130391 Выделение общего кода в отдельные классы

Отправлено автор: yulia_st 14 мая 2014 - 07:56 в Selenium - Functional Testing

можно ли вынести в отдельный класс методы setUp и tearDown отмеченные аннотациями @Before @After?

затем создать объект класса и вызывать его метод.

будет ли работать такая конструкция?

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




#130080 Считывание элемента xml файла (java)

Отправлено автор: yulia_st 29 апреля 2014 - 16:13 в Selenium - Functional Testing

Есть xml файл, в котором хранятся xpath'ы элементов.

Например

<?xml version="1.0" encoding="UTF-8"?>
<elements>
<loginField>"//input[@name='login']"</loginField>
<passwordField>"//input[@name='password']"</passwordField>
<loginButton>"//button[contains(.,'Login')]"</loginButton>
</elements>

 

 

Необходимо написать xml парсер, объект которого, по заданному параметру "имя файла" и "имя ноды" считывал бы необходимый xpath.

 

ранее писала такое на РНР, но специфика работы заставила переквалифицироваться на Java.

Ha PHP это выглядело все очень просто, буквально в три строчки. читаю примеры по Java и понимаю, что ничего не понимаю.

 

Подскажите. Заранее спасибо!




#130079 WebDriver .click() не срабатывает

Отправлено автор: yulia_st 29 апреля 2014 - 16:09 в Selenium - Functional Testing

На самом деле клик не срабатывал, даже если после действия на клик никаких других команд не было.

Кнопка disabled до тех пор, пока не введен пароль. а в тесте ввод пароля и клик на кнопку слишком быстро отрабатывается. по сути кликало на disabled кнопку.

Проблема решена добавлением "sleep" после ввода пароля.

Можно закрывать :)




#129988 WebDriver .click() не срабатывает

Отправлено автор: yulia_st 25 апреля 2014 - 17:44 в Selenium - Functional Testing

Доброго времени суток, коллеги!

Постигаю азы автоматизации с помощью вебдрайвера.

Есть логин форма веб-приложения написанного на Java, вводим данные логин, пароль, нажимаем кнопку "Логин". Все работает, тест проходит успешно.

Но! Если после события "клик" по кнопке добавляем еще какие-либо действия, ассерты, тест перестает работать. Его поведение происходит так:

открывается приложение, вводится логин, пароль, кнопка не нажимается.

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

Взываю к коллективному разуму!

 

Ниже привожу кусок кода:

 

 

@Test

  public void testJel(){
    driver.get(baseUrl);
      
    driver.findElement(By.xpath("//input[contains(@name,'login')]")).sendKeys("email@gmail.com");
    driver.findElement(By.xpath("//input[contains(@name,'password')]")).sendKeys("abcABC123"); 
    driver.findElement(By.xpath("//button[contains(.,'Login ')]")).click();    
    assertTrue(driver.findElement(By.xpath("//div[contains(.,'Cluster Admin Panel')]")).isDisplayed());
  }

последняя строчка - проверка наличия элемента после входа в даш-боард.

 

Тест написан на Java с использованием WebDriver в Eclipse в связке с JUnit. тесты запускаю в FirefoxDriver (в ChromeDriver та же беда).

 

Был вариант что проблема в последней версии ФФ, откатила до более ранней - проблема не решается.

 

Буду благодарна за совет.