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

Публикации seamcat

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


#129985 Кастомизация JUnit отчетов

Отправлено автор: seamcat 25 апреля 2014 - 15:35 в Автоматизированное тестирование

Решение найдено. Так приятно пообщаться с умными людьми на этом форуме) как ни зайду что спросить - куча ответов... :D




#129969 Кастомизация JUnit отчетов

Отправлено автор: seamcat 25 апреля 2014 - 09:20 в Автоматизированное тестирование

Добрый день!

Столкнулась с проблемой кастомизации отчетов, генерируемых junitreport ant таском. В случае, если при выполнении теста возникли и failures и errors, то в теле отчета выводятся только failures. Хотелось бы, чтобы выводились и errors тоже. Может кто сталкивался с подобным? Ну или знатоки xsl - дайте, пожалуйста, дельный совет как изменить стандартный junit-noframes.xsl чтобы он поддерживал указанную функциональность ))

 




#129333 Автоматизация для сложной системы БД+отчеты

Отправлено автор: seamcat 09 апреля 2014 - 13:36 в Автоматизированное тестирование

Если кому вдруг будет интересно или актуально поделюсь опытом решения проблемы с тестированием описанной выше системы:

для проверки самих юниверсов, о которых шла речь, был разработан скрипт на perl (в принципе на питоне аналог тоже написали, но он медленнее работает из-за меньшей скорости обработки текстовых данных). Скрипт обращается к веб сервису (через REST API), с которого можно получить данные юниверса, а так же данные из базы, прошедшие "обработку" юниверсом. Далее скрипт генерит набор необходимых SQL напрямую к базе данных и получает аналогичные данные. Затем сравнивает то, что получили из базы, с тем, что выдал юниверс. Собственно, это то, что и было нужно. 

А т.к. репорты оказалось возможным просматривать через веб, то их решили тестировать с помощью selenium.




#129332 Подскажите инструмент для нагрузочного тестирования

Отправлено автор: seamcat 09 апреля 2014 - 13:30 в Тестирование производительности

Что тогда посоветуете?




#129331 Проблемка с поиском дочерних элементов по xpath

Отправлено автор: seamcat 09 апреля 2014 - 13:27 в Selenium - Functional Testing

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




#129324 Проблемка с поиском дочерних элементов по xpath

Отправлено автор: seamcat 09 апреля 2014 - 12:32 в Selenium - Functional Testing

Приветствую!

Прошлась поиском по темам, но похожей не нашла (может, не так искала?). Поэтому спрошу совета. 

Есть примерно такая cтруктура:

....<div class=" ovh vai" >
    <span class=" nwt db">
             <a  href="..">Some Link Text </a>
    </span>
</div>
....

<div class=" ovh vai" >
    <span class=" nwt db">
             Some Text
    </span>
</div>
...

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

 

xpath   

.//div/span/child::node()

 в принципе выделяет нужный текст внутри span или тег a. Однако получить список WebElement в данном случае не получится, ибо селениум ругнется, что данный xpath невалидный или не возвращает список элементов )

Поэтому вопрос, как обыграть это все в селениуме или может как-то по-другому xpath написать, так чтоб на результирующих объектах достаточно было только text() вызвать? 




#129257 Подскажите инструмент для нагрузочного тестирования

Отправлено автор: seamcat 08 апреля 2014 - 13:21 в Тестирование производительности

Возможно достаточно будет окончания прогрузки страницы 

 

 

и замерить время до полного отображения контента отчета (тестовая машина 1 будет, :) максимум 2)

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

 

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

Я попробовала заиспользовать инструмент LoadUIWeb, который тут разрекламировали в соседней теме, вроде бы можно сделать то, что надо, но пока не разобралась, как интерпретировать результаты. На 10 пользователях тест прошел успешно и в принципе время открытия итоговой страницы 10 пользователями примерно такое, как личные замеры времени открытия страницы одним пользователем. Однако на 50 и даже 20 пользователях я так и не дождалась, когда тест завершится. Либо что-то неправильно делаю, либо одно из двух :)




#129229 Подскажите инструмент для нагрузочного тестирования

Отправлено автор: seamcat 08 апреля 2014 - 08:34 в Тестирование производительности

Не знаю, может кто-то что-то более интересное  посоветует, но у нас в компании используется Load Runner с SiteScope для нагрузочного тестирования.

Спасибо за ответ. Посмотрю описание по данному инструменту, но ради такой небольшой в сущности задачи, начальство вряд ли раззорится на продукт от HP %)




#129155 Подскажите инструмент для нагрузочного тестирования

Отправлено автор: seamcat 07 апреля 2014 - 07:38 в Тестирование производительности

Добрый день! На текущем проекте столкнулась с задачей по нагрузочному тестированию, но не совсем обычной (на мой взгляд). Есть веб отчеты, которые можно открывать по прямой ссылке. Контент отчета генерится флешем/явой/ява скриптом в зависимости от типа отчета (их 5 видов), данные берутся из базы. Отчеты сами по себе большие + время на получение данных из базы, поэтому каждый отчет открывается довольно долго. Бизнес-сценарий довольно прост: 50-100 пользователей одновременно открывают отчет. Отчет должен открыться за отведенное время (т.е. не дольше N минут). 

Собственно, по такой задаче возник вопрос: какой инструмент позволит сэмулировать открытие отчета 50-100 пользователями (возможно больше) и замерить время до полного отображения контента отчета (тестовая машина 1 будет, :) максимум 2)

 

Сам контент отчетов проверяется отдельными тестами (Selenium+java+еще пара библиотек). Думала в сторону Selenium Grid, но до этого с ним не работала и мне кажется, что оно не подойдет в виду отстуствия большого числа тестовых машин и еще нескольких факторов.

 

Может, кто-то сталкивался с подобной задачей или есть какие-то соображения на сей счет? Заранее большое спасибо!

 




#127910 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 10:56 в Selenium - Functional Testing

Хм, я видимо пропустила сообщение, первый вариант работает. Тогда да - все ок :) Спасибо!




#127907 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 10:28 в Selenium - Functional Testing

да, уже разобралась. почему оффтоплю? проблема поиска 

List<WebElement> els = el.findElements(By.xpath(".//rect"));

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




#127905 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 10:17 в Selenium - Functional Testing

пыталась юзать такой кейс

List<WebElement> els = driver.findElements(By.xpath(".//div[contains(@id, 'container')]"));

говорит, что выражение неправильное или в результате не дает элемент. чего опять не так? ))




#127903 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 09:54 в Selenium - Functional Testing

Регулярные выражения это прерогатива XPath2.0, который на данный момент не поддерживается браузерами.

 

хм, а как тогда? искать все, а затем средствами явы перебирать в поисках нужных?




#127897 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 09:13 в Selenium - Functional Testing

svg есть, но без xmlns="http://www.w3.org/2000/svg"

 

а может кто еще проконсультировать, почему вот это не работает (подобные примеры видела в инете и народ писал что так работает)

List<WebElement> els = driver.findElements(By.xpath(".//div[@id='*container*']"));

у меня не находит вообще ничего (( вообще какая-то засада, внутри фрейма по xpath не ищется ничего, кроме еще одного iframe. все остальное тока по имени класса, тега и т.п.




#127894 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 08:24 в Selenium - Functional Testing

А сделайте так:

System.out.println(el.getAttribute("outerHTML"));

 

там ооооооооочень много текста. этот элемент лишь верхушка большого айсберга, внутри которого очень много всяких элемeнтов, в том числе rect.




#127893 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 08:15 в Selenium - Functional Testing

а если точку убрать?

 

никакой разницы




#127890 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 07:56 в Selenium - Functional Testing

- findElements не может упасть по определению.

 

пардон, падало с таймаутом в случае, когда было findElement

 

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

 

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

 

Короче, сейчас вот такой код

driver.switchTo().frame("openDocChildFrame");
WebElement fr = driver.findElement(By.xpath("//iframe[@title='Analysis Application']"));
driver.switchTo().frame(fr);
WebElement el = driver.findElement(By.xpath("//*[@data-chart-identifier='CLIENT_SIDE_CHART']"))

в итоге находит нужного парента по xpath вообще без проблем

далее, в рамках этого парента пытаюсь найти все элементы rect

вот это работает

List<WebElement> els = el.findElements(By.tagName("rect"));

а вот это НЕ работает

List<WebElement> els = el.findElements(By.xpath(".//rect"));

почему?

 




#127886 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 06 марта 2014 - 06:22 в Selenium - Functional Testing

Ни это

driver.findElement(By.xpath("//iframe[@title='Название']//rec"))

ни это

WebElement fr = driver.findElement(By.xpath("//iframe[@title='Название']"));
List<WebElement> els = fr.findElements(By.xpath(".//rect"));

не работает))

 

пока работает только один вариант ((( с переключением на конкретный фрейм и поиск в нем элемента по имени тега... но так находятся все rect'ы, и найти среди них конкретный - оч проблематично... 




#127865 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 05 марта 2014 - 14:04 в Selenium - Functional Testing

хм, интересное замечание. В свое время из документации я поняла, что если переключиться на конкретный фрейм (а тут меня в принципе интересует только этот фрейм и его дочерние элементы), то все дальнейшие команды и адресация будет происходить относительно этого фрема. Поправьте, если я не права). В любом случае, даже если учесть, что я, переключившись на конкретный фрейм, осуществляю поиск по всему документу, то почему все таки по тегу объекты находятся, а по xpath нет? или как раз в этом случае xpath ищет относительно всего документа (верхнего уровня), а поиск по тегу осуществляется в рамках конкретного фрейма? Это могло бы тогда объяснить проблему :)




#127861 Проблема с поиском элементов по xpath внутри фреймов

Отправлено автор: seamcat 05 марта 2014 - 13:37 в Selenium - Functional Testing

При тестировании веб репортов с использованием webDriver'a столкнулась с необычной на первый взгляд проблемой. Каждый web-репорт содержит внутри себя целую иерархию фреймов, соответственно, чтобы добраться до нужного элемента репорта (например диаграммы), необходимо подключиться к нужному фрейму. С этим проблем не возникло, фреймы прекрасно находятся как по именам и идентификаторам, так и по xpath (если имена и идентификаоры изменяются при рефреше страницы соответственно). Однако, почему-то поиск элементов внутри конкретного фрейма по xpath (кроме другого фрейма!) всегда заканчивается неудачей, при том что поиск того же элемента по id/name/tagName проходит удачно. У меня есть подозрение, что я как-то неверно указываю путь до элемента относительно корня документа (контекста?). Но почему тогда фреймы находятся с тем же подходом к написанию xpath?

Пример структуры документа и кода для поиска элемента:

<html>
 <body>
    <div>      
        ......
          <iframe id="уникальный">
             #document
              <html>
                   ....
                      <iframe id="неуникальный" title="Название">
                          #document
                           <html>
                              <body>
                                  <div>
                                       .....
                                      <div id="уникальный">
                                          <div> - тут много элементов без уникальных id и в них уже искомый элемент
                                               <rect id="неуникальный" >

пытаюсь найти rect (их может быть много, поэтому пусть будет хотя бы список)

driver.switchTo().frame(id);
WebElement fr = driver.findElement(By.xpath("//iframe[@title='Название']"));
driver.switchTo().frame(fr);
List<WebElement> els = driver.findElements(By.xpath("//rect"));

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

List<WebElement> els = driver.findElements(By.tagName("rect"));

то все ищется. В чем загвоздка? ) Просто в конечном итоге нужно найти конкретный элемент rect и я пока не вижу другого способа, кроме как через xpath его уникально  определить, а тут такая засада...

 

Заранее спасибо!

 

 
 
 
 



#127613 Автоматизация для сложной системы БД+отчеты

Отправлено автор: seamcat 28 февраля 2014 - 05:59 в Автоматизированное тестирование

все данные, которые юниверс может вытащить из базы можно в принципе выгрузить в определенном формате (например экселя), а далее проверять уже то, что выгружено (плюс то, как обработано, а там может быть агрегация определенных полей), с проверкой данных в итоговых отчетах я тоже не вижу проблем)) точнее так - сам принцип того ЧТО тестировать у меня есть, проблема заключается в том, что нужно по-максимому автоматизировать, а для этого надо подобрать инструментарий и по-возможности объединить его в одну систему (тестовый фреймворк?). Пока на вскидку получается набор совершенной разрозненных тулов (( плюсом сложность того, что и данные с юниверсов и сами отчеты придется выгружать со сторонних программ (которые по сути не надо тестировать) и как это все включить в единый процесс автоматизации - у меня нет идей ((




#127576 Автоматизация для сложной системы БД+отчеты

Отправлено автор: seamcat 27 февраля 2014 - 09:16 в Автоматизированное тестирование

Из терминологии :)

Юниверс (universe) - семантический срез данных предназначен для удобства восприятия данных при составлении отчета. 

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

(на мой взгляд, понятно описано тут с примерами http://www.interface...sp?artId=24980)

Соответственно, юниверс - это не модель отчета, а скорее источник агрегированных данных для отчета. Цепочку построения отчета стоит рассматривать так: есть логика построения отчета (поля, значения, агрегированные значения) - отчет при построении запрашивает данные из своего источника данных, т.е. из юниверса, а юниверс в свою очередь обращается к базе данных и получает нужные данные оттуда, сам их перерабатывает и возвращает отчету. Собственно поэтому и требуется тестирование в 2 этапа. 1 - проверка, а правильно ли построен сам юниверс и те ли данные он возвращает и обрабатывает (тут еще сложность в том, что сам юниверс руками не пощупать - он создается и храниться только в определенной программе), 2 этап - это уже проверка самих отчетов, сгенерированных на основе юниверса. Отчетов много, на основе одного юниверса строяться несколько отчетов. Тут сложность в том, что отчеты тоже генеряться в определенной программе, но результаты могут быть сохранены в файл. Отчеты могут быть или в веб форме или в экселе (т.е. один отчет не может быть и в той и в другой форме - это частично сокращает время на тестирование :) ). 
Как-то так....




#127572 Автоматизация для сложной системы БД+отчеты

Отправлено автор: seamcat 27 февраля 2014 - 08:21 в Автоматизированное тестирование

Не знаю, с какой стороны подступиться к проекту) Есть большая база данных, далее с помощью определенных тулов разрабатываются юниверсы, на основе которых будут строиться отчеты (web и excel). Тестирование нужно проводить в 2 этапа, т.е. сначала проверить корректно ли созданы юниверсы (т.е. правильные ли данные из них можно получить), ну и второй этап - проверка самих отчетов (логика). Нужно по-максимому все автоматизировать, поскольку количество юниверсов и отчетов велико, а объем данных для них вообще огромный. Хотелось бы подобрать некую единую систему для проверки всех частей, ну или хотя бы набрать инструментарий, который можно бы было объединить в эту систему. По сути, мы имеем доступ только к базе и к специфичному инструментарию (т.е. ГУИ сторонних программ), а так же возможность сохранить итоговые отчеты в файлы. Может у кого-то есть опыт работы на подобных проектах или идеи по подбору подходящего инструментария для тестирования?