29
«Обзор и сравнение инструменов нагрузочного тестирования» ©2011. QuartSoft Corp. Load testing of web applications Евгений Дмитриченко, менеджер проектов компании «КвартСофт» [email protected] www.quartsoft.com

Load Testing

Embed Size (px)

Citation preview

Page 1: Load Testing

«Обзор и сравнение инструменов

нагрузочного тестирования»

©2011. QuartSoft Corp.

Load testing of web applications

Евгений Дмитриченко,менеджер проектов компании «КвартСофт»[email protected]

www.quartsoft.com

Page 2: Load Testing

2

Цели тестирования

Ответить на вопросы:• Выдержит ли сервер ожидаемую пиковую нагрузку?

• Какой запас прочности сервера?

• Где узкие места в системе?

©2011. QuartSoft Corp. www.quartsoft.com

Page 3: Load Testing

3

Виды тестирования

• Performance testing (производительности)

• Resource utilization testing (утилизации ресурсов)

• Stress testing (стрессовое)

• Volume testing (объёмное)

• Scalability testing (масштабируемости)

©2011. QuartSoft Corp. www.quartsoft.com

Page 4: Load Testing

4

Инструменты тестирования

• Локальные системы:• ApacheBench• Jmeter• WAPT• HP LoadRunner

• Онлайновые системы:• Load Impact • LoadStorm• BrowserMob

©2011. QuartSoft Corp. www.quartsoft.com

Page 5: Load Testing

5

ApacheBench

©2011. QuartSoft Corp. www.quartsoft.com

Простой в использовании

Кроссплатформенный

Бесплатный

Page 6: Load Testing

6

ApacheBench

©2011. QuartSoft Corp. www.quartsoft.com

$ ab -c 100 -t 30 -n 10000 -k http://www.example.com

Concurrency Level: 100Time taken for tests: 30.033 secondsComplete requests: 6912Failed requests: 0Write errors: 0Keep-Alive requests: 0Total transferred: 5840304 bytesHTML transferred: 4018240 bytesRequests per second: 230.14 [#/sec] (mean)Time per request: 434.511 [ms] (mean)Time per request: 4.345 [ms] (mean, across all concurrent requests)Transfer rate: 189.90 [Kbytes/sec] received

Connection Times (ms)min mean[+/-sd] median maxConnect: 136 188 200.4 175 3579Processing: 137 242 171.6 200 5425Waiting: 137 218 162.1 175 5399Total: 274 431 267.6 376 5602

Percentage of the requests served within a certain time (ms)50% 376…95% 74698% 94899% 1173100% 5602 (longest request)

Page 7: Load Testing

7

Apache JMeter

©2011. QuartSoft Corp. www.quartsoft.com

запись сценариев через проксированиеподдержка источников динамических данных в виде

файлов CSVвозможность отладки сценария тестаподдержка сессий пользователей, авторизацииподдержка HTTPSнаглядное представление результатов тестирования,

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

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

Page 8: Load Testing

8

Apache JMeter

©2011. QuartSoft Corp. www.quartsoft.com

Page 9: Load Testing

9

Apache JMeter

©2011. QuartSoft Corp. www.quartsoft.com

Page 10: Load Testing

10

WAPT

©2011. QuartSoft Corp. www.quartsoft.com

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

развернутый отчетвозможность распределенного тестирования–только под Windows

Page 11: Load Testing

11

WAPT

©2011. QuartSoft Corp. www.quartsoft.com

Page 12: Load Testing

12

WAPT

©2011. QuartSoft Corp. www.quartsoft.com

Page 13: Load Testing

13

HP LoadRunner

©2011. QuartSoft Corp. www.quartsoft.com

• Virtual User Generator (VuGen) — служит для разработки нагрузочных скриптов.• Load Generator — служит для генерации нагрузки (генерации

виртуальных пользователей).• Controller — служит для разработки и запуска сценариев

нагрузки.• Analysis — служит для анализа результатов нагрузочного

тестирования.

Page 14: Load Testing

14

HP LoadRunner

©2011. QuartSoft Corp. www.quartsoft.com

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

пользователя работает с Web 2.0 технологиями: Ajax, Silverlight, Java etc позволяет тестировать различные виды приложений:

мобильные, RIA, облачные. и многое другое– ценовая политика

Page 15: Load Testing

15

HP LoadRunner

©2011. QuartSoft Corp. www.quartsoft.com

Page 16: Load Testing

16

Минусы локальных инструментов

©2011. QuartSoft Corp. www.quartsoft.com

• высокое требование к ресурсам

• необходимость построения и поддержания

инфраструктуры для распределенного тестирования

• ограничения входящего интернет-канала

Page 17: Load Testing

17

LoadImpact

©2011. QuartSoft Corp. www.quartsoft.com

автоматизированная запись тестов

удобный, понятный интерфейс

наглядное представление результатов

распределенное тестирование

Page 18: Load Testing

18

LoadImpact

www.quartsoft.com©2011. QuartSoft Corp.

Page 19: Load Testing

19

LoadImpact

www.quartsoft.com©2011. QuartSoft Corp.

Page 20: Load Testing

20

LoadStorm

©2011. QuartSoft Corp. www.quartsoft.com

наглядное представление результатов распределенное тестирование

–создание сценариев вручную –запутанный интерфейс

Page 21: Load Testing

21

LoadStorm

©2011. QuartSoft Corp. www.quartsoft.com

Page 22: Load Testing

22

LoadStorm

©2011. QuartSoft Corp. www.quartsoft.com

Page 23: Load Testing

23

LoadStorm

©2011. QuartSoft Corp. www.quartsoft.com

Page 24: Load Testing

24

LoadStorm

©2011. QuartSoft Corp. www.quartsoft.com

Page 25: Load Testing

25

BrowserMob

©2011. QuartSoft Corp. www.quartsoft.com

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

виртуальными

Page 26: Load Testing

26

BrowserMob

©2011. QuartSoft Corp. www.quartsoft.com

Page 27: Load Testing

27

BrowserMob

©2011. QuartSoft Corp. www.quartsoft.com

Page 28: Load Testing

28

Выводы

©2011. QuartSoft Corp. www.quartsoft.com

•локальные системы более функциональные

•но локальные системы требуют построения

инфраструктуры для распределенного тестирования

•онлайновых для большинства случаев хватает

•онлайновые системы имеют гибкую ценовую

политику по принципу "платишь за то, что

используешь"

Page 29: Load Testing

29

Вопросы? Спасибо!

Дмитриченко ЕвгенийМенеджер проектов компании «КвартСофт»

[email protected]

©2011. QuartSoft Corp. www.quartsoft.com