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

Публикации aksas

28 публикаций создано aksas (учитываются публикации только с 29 мая 2023)



#141182 Получение таблицы Call Stack вызовов во время ошибки из тестов

Отправлено автор: aksas 18 мая 2015 - 11:42 в SmartBear (AutomatedQA) - Functional Testing

Если после падения теста сохранять тесткомлитовский отчет

Log.SaveResultsAs("path/to/log",lsHTML);

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




#140690 Поиск элементов в gwt проекте

Отправлено автор: aksas 14 апреля 2015 - 12:22 в Selenium - Functional Testing

а это все в одном месте или в разных? Что-то мне кажется тут не в gwt проблема :)




#140702 Поиск элементов в gwt проекте

Отправлено автор: aksas 14 апреля 2015 - 16:47 в Selenium - Functional Testing

ну если в разных, то это три разные проблемы :)

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

по первой проблеме простое гугление дает например http://software-test...hed-to-the-dom/




#142441 Использование if-else в работе теста

Отправлено автор: aksas 08 июля 2015 - 14:33 в Selenium - Functional Testing

у вас во всех трех ветка выполняется одно и тоже действие HomePage.exitButton(driver).click();
Это так и задумывалось?
 

Ума не приложу почему если елемента нет, программа не переходит к следующему ифу.


может потому, что у вас происходит исключение и его надо обрабатывать?
 
А что вобще должен делать этот код?

Я так понял что если на экране есть или errorMessageStopMarket или errorMessageNotMoney, то просто выходим.
Иначе проверяем что на экране обязательно должно быть rateOkMessage
 
Если это так, то согласен с  Igor_Khrol - это плохая идея так писать тесты.
Но, если очень хочется, то попробуйте сделать так
 

TicketPage.makeRate(driver).click();

boolean needOk = True;
try{  
  needOk =  not TicketPage.errorMessageStopMarket(driver).isDisplayed();
}catch(NoSuchElementException e){
  try{  
    needOk = not TicketPage.errorMessageNotMoney(driver).isDisplayed();
  }catch(NoSuchElementException e){}
}

if(needOk) Assert.assertTrue(TicketPage.rateOkMessage(driver).isDisplayed());
HomePage.exitButton(driver).click();



#141238 Как использовать Groovy при Data Driven test в SOAP UI? (и еще два воп

Отправлено автор: aksas 20 мая 2015 - 14:46 в SmartBear (AutomatedQA) - Functional Testing

3. http://www.soapui.or...1-Iterate-nodes




#141280 Как использовать Groovy при Data Driven test в SOAP UI? (и еще два воп

Отправлено автор: aksas 22 мая 2015 - 08:35 в SmartBear (AutomatedQA) - Functional Testing

import groovy.sql.Sql
sql = Sql.newInstance("jdbc:sqlserver://servername\\inst1", 
     "username", "password", "com.microsoft.sqlserver.jdbc.SQLServerDriver")

def row = sql.firstRow("select * from blalbalba")

это вот отсюда http://stackoverflow...m-groovy-script




#143694 Нажатие на динамически создаваемые элементы

Отправлено автор: aksas 27 августа 2015 - 09:08 в Selenium - Functional Testing

 

А вот и нет

специально сделал для вас скриншот

1.jpg




#143587 Нажатие на динамически создаваемые элементы

Отправлено автор: aksas 23 августа 2015 - 12:31 в Selenium - Functional Testing

с помощью инструментов разработчика вполне можно посмотреть код этого меню (в фф Ctrl+Shift+i)

Селектор для пунктов меню будет примерно такой .uiContextualTypeaheadView > li




#147742 Перезапуск упавших тестов IRetryAnalyzer в связке с dataprovider

Отправлено автор: aksas 15 января 2016 - 14:44 в Selenium - Functional Testing

мне кажется вам надо в onTestSuccess устанавливать retryCount в 0.




#140571 Selenium - проверка удаления элемента

Отправлено автор: aksas 09 апреля 2015 - 08:53 в Selenium - Functional Testing

посмотрите как в коде вебдрайвера сделано https://code.google....Conditions.java

 

те для вас както так должно быть

public void isInvisible(By locator){
        try {
          return !(driver.findElement(locator).isDisplayed());
        } catch (NoSuchElementException e) {
          // Returns true because the element is not present in DOM. The
          // try block checks if the element is present but is invisible.
          return true;
        } catch (StaleElementReferenceException e) {
          // Returns true because stale element reference implies that element
          // is no longer visible.
          return true;
        }
}



#140570 Selenium - проверка удаления элемента

Отправлено автор: aksas 09 апреля 2015 - 08:44 в Selenium - Functional Testing

нет, если элемента нет в DOM то поиск вернет исключение




#149807 Ожидание окончания поиска, как?

Отправлено автор: aksas 25 марта 2016 - 10:30 в Автоматизированное тестирование

ну а тут уже нужны технические детали которые вы не предоставили - что тестируете, каким инструментом? В целом алгоритм прост -

1 проверяете есть ли индикатор на экране,

2 если есть то ждете немного и идете на пункт 1

3 если нет, то поиск закончился




#149639 Ожидание окончания поиска, как?

Отправлено автор: aksas 21 марта 2016 - 13:41 в Автоматизированное тестирование

готовых решений нет, но

- если есть какойто индикатор того что идет поиск, то можно использовать его. Если его нет, то задайтесь вопросом а как пользователь узнает что его запрос обработался?

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

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

- слушать запросы и ждать окончания их выполнения

- еще что-то наверняка




#140983 Нужна помощь в автоматизации

Отправлено автор: aksas 29 апреля 2015 - 15:03 в Начинающему тестировщику

ну доступность наверно выделена с помощью стилей? А как получили доступ к датам?




#140993 Нужна помощь в автоматизации

Отправлено автор: aksas 30 апреля 2015 - 07:57 в Начинающему тестировщику

а как у вас с XPATH'ами?

Мне кажется вы не до конца разобрались с задачей. Можете выложить кусок HTML из инспектора (обычно Ctrl+Shift+I), который относится к календарю?

 

По селениуму вроде вполне нормальная дока на оф.сайте




#140981 Нужна помощь в автоматизации

Отправлено автор: aksas 29 апреля 2015 - 14:09 в Начинающему тестировщику

а как бы вы этот функционал проверяли вручную?

как пользователь видит эту информацию?

 

вот так и вы можете их получить и выбрать. А что там в жаваскрипте в идеальном случае вас вообще не должно волновать :)




#142509 Как проверить наличие всех элементов?

Отправлено автор: aksas 10 июля 2015 - 13:06 в Автоматизированное тестирование

если проверять "не сместилось" важно, то самый простой способ это сравнивать картинки http://support.smart...warticle/55575/

Т.е. создаете эталонную картинку и сравниваете с ней текущую. Но нужно понимать, что метод очень чусвтвителен к малейшим изменениям, к разным настройкам на разных системах.




#140205 CSS vs XPath

Отправлено автор: aksas 27 марта 2015 - 16:15 в Selenium - Functional Testing

+ css  быстрее http://stackoverflow...tteraccording-t

+ css лаконичнее

 


Не помню, если в CSS contains, но что реально напрягало, что в CSS нет last(выбрать последний элемент или last()-1 - предпоследний), OR, count и т.п.

 

 

CSS contains  - [attribute~=value]

last()-1            - :nth-last-child(-n+2) /* represents the two last rows of an HTML table */

OR                  - ,

 

но минусы есть

- нет возможности проверить текст в ноде

- нельзя обратиться к родительской ноде

 

Я стараюсь использовать css везде, где не нужно находить элемент по тексту внутри (а это как по мне всегда плохо) и если нужен сложный селектор с использованием родителя




#140207 CSS vs XPath

Отправлено автор: aksas 27 марта 2015 - 16:17 в Selenium - Functional Testing


Однако, пару раз сталкивался, что при последовательном поиске элементов с разными типами селекторов (нашли один, внутри него - другой и т.п.) драйвер иногда начинает искать от корня при смене типа селектора, т.е. игнорирует контекст поиска.

 

тоже сталкивался в случае если сначала css а потом xpath. В таком случае мне помогло начинать xpath с "./"




#140256 CSS vs XPath

Отправлено автор: aksas 30 марта 2015 - 14:39 в Selenium - Functional Testing

по моим наблюдением многие даже не пытаются разобраться с css. С XPath разобрались, зачем еще напрягаться :)




#146775 проблема с элементом который не виден на экране

Отправлено автор: aksas 03 декабря 2015 - 10:56 в Автоматизированное тестирование

можете взять текст из element.getAttribute("innerHTML"), не совсем честно, но зато быстро %)

еще можно попробовать

new Actions(driver).moveToElement(element).perform();



#140864 Поиск комбинаций в строке где один символ "универсальный"

Отправлено автор: aksas 22 апреля 2015 - 10:24 в Автоматизированное тестирование

имеется задание протестировать комбинации

.....

 

Нужно реализовать распознавание строки выигрышной комбинации

 

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




#140975 Как работать с элементами в shadow DOM

Отправлено автор: aksas 29 апреля 2015 - 09:20 в Про тестирование обо всём подряд

вроде в хром поддержку добавили https://code.google....s/detail?id=852

правда как она работает я не в курсе :)

а еще в черновике стандарта есть такое

http://www.w3.org/TR...ted-shadow-doms




#149044 Как найти то чего нет?

Отправлено автор: aksas 02 марта 2016 - 16:27 в Автоматизированное тестирование

assert element.get_attribute('href') == None

 

http://selenium-pyth...t.get_attribute




#147409 Как быстро подсчитать количество всех элементов на странице?

Отправлено автор: aksas 24 декабря 2015 - 10:17 в Автоматизированное тестирование

ждите появление тех элементов с которыми вы собираетесь взаимодействовать.

Нужна кнопка "ОК" - ждите пока она появиться, нужено еще что-то - ждите пока появится.

 

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