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