Если после падения теста сохранять тесткомлитовский отчет
Log.SaveResultsAs("path/to/log",lsHTML);
, то можно выкусывать стек из него. Костыль конечно, но как вариант...
28 публикаций создано aksas (учитываются публикации только с 29 мая 2023)
Отправлено автор: aksas 18 мая 2015 - 11:42 в SmartBear (AutomatedQA) - Functional Testing
Если после падения теста сохранять тесткомлитовский отчет
Log.SaveResultsAs("path/to/log",lsHTML);
, то можно выкусывать стек из него. Костыль конечно, но как вариант...
Отправлено автор: aksas 14 апреля 2015 - 12:22 в Selenium - Functional Testing
а это все в одном месте или в разных? Что-то мне кажется тут не в gwt проблема :)
Отправлено автор: aksas 14 апреля 2015 - 16:47 в Selenium - Functional Testing
ну если в разных, то это три разные проблемы :)
вторую и третью нужно бороть правильными ожиданиями - видимо страница еще не обновилась, а вы пытаетесь с ней работать. Почитайте про явные и неявные ожидания
по первой проблеме простое гугление дает например http://software-test...hed-to-the-dom/
Отправлено автор: 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();
Отправлено автор: aksas 20 мая 2015 - 14:46 в SmartBear (AutomatedQA) - Functional Testing
Отправлено автор: 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
Отправлено автор: aksas 27 августа 2015 - 09:08 в Selenium - Functional Testing
Отправлено автор: aksas 23 августа 2015 - 12:31 в Selenium - Functional Testing
с помощью инструментов разработчика вполне можно посмотреть код этого меню (в фф Ctrl+Shift+i)
Селектор для пунктов меню будет примерно такой .uiContextualTypeaheadView > li
Отправлено автор: aksas 15 января 2016 - 14:44 в Selenium - Functional Testing
мне кажется вам надо в onTestSuccess устанавливать retryCount в 0.
Отправлено автор: 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; } }
Отправлено автор: aksas 09 апреля 2015 - 08:44 в Selenium - Functional Testing
нет, если элемента нет в DOM то поиск вернет исключение
Отправлено автор: aksas 25 марта 2016 - 10:30 в Автоматизированное тестирование
ну а тут уже нужны технические детали которые вы не предоставили - что тестируете, каким инструментом? В целом алгоритм прост -
1 проверяете есть ли индикатор на экране,
2 если есть то ждете немного и идете на пункт 1
3 если нет, то поиск закончился
Отправлено автор: aksas 21 марта 2016 - 13:41 в Автоматизированное тестирование
готовых решений нет, но
- если есть какойто индикатор того что идет поиск, то можно использовать его. Если его нет, то задайтесь вопросом а как пользователь узнает что его запрос обработался?
- и можно завязаться на изменение общего числа записей в списке, ведь если поиск отработал, то колличество записей должно поменяться. Способ не стопроцентный
- можно попросить разработчиков добавить флаг говорящий о том, ждем мы ответа на запрос или нет, и обращаться к нему на прямую
- слушать запросы и ждать окончания их выполнения
- еще что-то наверняка
Отправлено автор: aksas 29 апреля 2015 - 15:03 в Начинающему тестировщику
ну доступность наверно выделена с помощью стилей? А как получили доступ к датам?
Отправлено автор: aksas 30 апреля 2015 - 07:57 в Начинающему тестировщику
а как у вас с XPATH'ами?
Мне кажется вы не до конца разобрались с задачей. Можете выложить кусок HTML из инспектора (обычно Ctrl+Shift+I), который относится к календарю?
По селениуму вроде вполне нормальная дока на оф.сайте
Отправлено автор: aksas 29 апреля 2015 - 14:09 в Начинающему тестировщику
а как бы вы этот функционал проверяли вручную?
как пользователь видит эту информацию?
вот так и вы можете их получить и выбрать. А что там в жаваскрипте в идеальном случае вас вообще не должно волновать :)
Отправлено автор: aksas 10 июля 2015 - 13:06 в Автоматизированное тестирование
если проверять "не сместилось" важно, то самый простой способ это сравнивать картинки http://support.smart...warticle/55575/
Т.е. создаете эталонную картинку и сравниваете с ней текущую. Но нужно понимать, что метод очень чусвтвителен к малейшим изменениям, к разным настройкам на разных системах.
Отправлено автор: 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 везде, где не нужно находить элемент по тексту внутри (а это как по мне всегда плохо) и если нужен сложный селектор с использованием родителя
Отправлено автор: aksas 27 марта 2015 - 16:17 в Selenium - Functional Testing
Однако, пару раз сталкивался, что при последовательном поиске элементов с разными типами селекторов (нашли один, внутри него - другой и т.п.) драйвер иногда начинает искать от корня при смене типа селектора, т.е. игнорирует контекст поиска.
тоже сталкивался в случае если сначала css а потом xpath. В таком случае мне помогло начинать xpath с "./"
Отправлено автор: aksas 30 марта 2015 - 14:39 в Selenium - Functional Testing
по моим наблюдением многие даже не пытаются разобраться с css. С XPath разобрались, зачем еще напрягаться :)
Отправлено автор: aksas 03 декабря 2015 - 10:56 в Автоматизированное тестирование
можете взять текст из element.getAttribute("innerHTML"), не совсем честно, но зато быстро %)
еще можно попробовать
new Actions(driver).moveToElement(element).perform();
Отправлено автор: aksas 22 апреля 2015 - 10:24 в Автоматизированное тестирование
имеется задание протестировать комбинации
.....
Нужно реализовать распознавание строки выигрышной комбинации
Вы уж определитесь - вам протестировать продсчет очков надо, или написать распознование и подсчет - это абсолютно разные задачи
Отправлено автор: aksas 29 апреля 2015 - 09:20 в Про тестирование обо всём подряд
вроде в хром поддержку добавили https://code.google....s/detail?id=852
правда как она работает я не в курсе :)
а еще в черновике стандарта есть такое
Отправлено автор: aksas 02 марта 2016 - 16:27 в Автоматизированное тестирование
Отправлено автор: aksas 24 декабря 2015 - 10:17 в Автоматизированное тестирование
ждите появление тех элементов с которыми вы собираетесь взаимодействовать.
Нужна кнопка "ОК" - ждите пока она появиться, нужено еще что-то - ждите пока появится.
как оптимизация вашего алгоритма - можно ждать стабилизации колличества не всех элементов, а только тех которые находятся внутри дива.
Community Forum Software by IP.Board Русификация от IBResource
Лицензия зарегистрирована на: Software-Testing.Ru