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

Тестирование стабильности web-приложения


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 6

#1 Гость_Lina_lin_*

Гость_Lina_lin_*
  • Guests

Отправлено 17 марта 2005 - 14:25

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

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

Вопрос: чем?

Помогите, кто чем может, плииииз.

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

#2 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 17 марта 2005 - 14:32

Трёхзвёздной... Какая хорошая оговорка :)
На самом деле, видимо, следует читать трехзвенной.

1) Стабильность, производительность и всё такое -- выбираем здесь http://software-test...mance_tools.htm
Ну, конечно, монитор ещё на сервер какой-нибудь прикрутить, а то и профилировщик.

2) Обход ссылок -- для сколь-нибудь сложных динамических сайтов таких инструментов мне неизвестно, для относительно простых сайтов Empirix e-TEST справляется довольно неплохо.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#3 SALar

SALar

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 2 298 сообщений
  • Город:Москва


Отправлено 17 марта 2005 - 15:55

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

- разные виды тестов. Их следует делать максимально независимо.

всевозможных утечек памяти на сервере

Скажу честно, здесь я не копенгаген, но по моему:
1) Для явы утечки памяти не характерны
2) Для такой проверки оставляют сервер под нагрузкой на продолжительное время (сутки). При этом гоняются различные типовые сценарии в цикле с параметризацией.

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

Кеш реализуют на сервере, так что вы его из программы не обойдете. Как правило его обходят при помощи:
1) Обнуления кэша, например, очисткой кэшовой БД, если таковая имеется.
2) Перезагрузки веб сервера
3) использования длинного буфера параметров
4) Установка короткого времени теста (5 мин)
Более точно сказать не могу, не зная точной архитектуры.

Вопрос: чем?


Зависит от веб сервера. Скорее всего, у вас ВебСфера. По идее лоадранер должен подойти. За вопросами к Дмитрию.

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

Как решить напрямую не знаю. Подобную задачу решали указанием идентификаторов объектов в качестве параметров тестов. Тут следует учесть, что у некоторых тулов буфер параметров сильно ограничен (для WAST максимум около 3000).
  • 0

-- 

Сергей Мартыненко

Блог 255 ступеней (байки для оруженосца)

facebook (Дети диаграммы Ганта)

ВебПосиделки клуба имени Френсиса Бэкона 

 


#4 yurigaga

yurigaga

    Новый участник

  • Members
  • Pip
  • 49 сообщений

Отправлено 17 марта 2005 - 15:55

Я думаю столько проверок одним продуктом не сделаешь

Стабильность и производительность (Stability & Perfromance)
По своему опыту могу рекомендовать LoadRunner
Мы гоняем тесты 24х7

Функциональность (Functionality)
т.е. проверка всех линков, икон и т.д
можно выбирать WinRunner, QuickTest

Но на все ето надо кучу денег

Юрий.
  • 0

#5 Mike

Mike

    Консультант

  • Members
  • PipPipPipPipPipPip
  • 1 079 сообщений
  • Город:Москва

Отправлено 17 марта 2005 - 16:50

Если денег жалко, то OpenSTA (нагрузочное) и/или Selenium (функциональное). И то и другое - opensource.
  • 0
Best regards,
Майк.

#6 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 872 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 18 марта 2005 - 10:57

всевозможных утечек памяти на сервере

Скажу честно, здесь я не копенгаген, но по моему:
1) Для явы утечки памяти не характерны
2) Для такой проверки оставляют сервер под нагрузкой на продолжительное время (сутки).

Ещё как характерны, особенно это критично именно для серверных приложений. Десктопное натеряло памяти -- закрыл его и всё, а сервер теряет, и теряет, и теряет...

Ловить утечеки пмяти непросто, но для начала нужно убедиться, что они есть, а это как раз очень легко и именно так, как посоветовал SALar -- оставить систему под нагрузкой на продолжительное время, подключив к ней монитор памяти (поищите в интернете по сочетанию Java GC monitor -- их пруд пруди) и посмотреть, растёт или колеблется вокруг некоторого постоянного уровня.

Что касается обхода кеширования, я не очень понял цель этого. Собственно, он для того и сделан, чтобы повышать производительность, так зачем измерять её без кеша? Какова ценность этих данных?

Скорее всего, у вас ВебСфера.

to SALar: Если не секрет, как Вы догадались, что именно WebSphere? Никаких признаков я не заметил. Просто интересно...
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#7 Green

Green

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 233 сообщений
  • ФИО:Гринкевич Сергей
  • Город:Москва

Отправлено 18 марта 2005 - 13:33

Если ваше приложение не реализует свой собственный кэш, то их должно быть только три:
1. на клиенте
2. на веб сервере (могут быть еще всякие прокси, если тестировать удаленно)
3. на дб сервере

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

Значит если мы дублируем запрос, то есть вероятность, что он не дойдет до дб, а ответ будет взят из кэша.

Как можно отключить кэш?
1. Кэш это настраиваемый параметр, который можно всегда отключить. На клиенте кэш отключается в браузере.
2. Использовать в ответах сервера HTTP параметр, запрещающий кэширование (действует только на кэш клиента, прокси и веб сервера).
3. Определить время кэширования и отправлять запросы с большим интервалом, чем время хранения ответа.
3. Всегда посылать уникальный запрос (ну и пусть себе кэшируется, а мы его не повторяем).

Как правило, при тестировании нет смысла отключать кэш дб сервера, т.к. это последнее звено в цепочке.
  • 0
Гринкевич Сергей


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных