performance testing vs load testing vs stress testing
Разлика између испитивања перформанси, испитивања оптерећења и испитивања напрезања - са примерима
Наш претходни водич из ове серије биће најбољи Водич за тестирање перформанси за сваког почетника.
У пољу за тестирање софтвера наилазимо на изразе као што су испитивање перформанси, испитивање оптерећења, тестирање отпорности на стрес итд. Ови појмови се често погрешно схватају и тумаче као исти концепти.
Међутим, постоји значајна разлика између ове три врсте испитивања и важно је да испитивач разуме исто.
=> Кликните овде за комплетну серију водича за тестирање перформанси
У овом упутству ћемо размотрити сваку од ових врста тестирања да бисмо разумели тачне разлике између њих.
Шта ћете научити:
Разлика између испитивања перформанси, испитивања оптерећења и испитивања напрезања
# 1) Испитивање перформанси
Шта је испитивање перформанси?
Испитивање перформанси је испитивање које се изводи како би се утврдило како компоненте система раде у одређеној датој ситуацији.
Коришћење ресурса, скалабилност и поузданост производа такође су потврђени током овог тестирања. Ово тестирање је подскуп инжењерског перформанса, који је фокусиран на решавање проблема перформанси у дизајну и архитектури софтверског производа.
Горња слика нам то јасно објашњава Испитивање перформанси је суперсет за тестирање оптерећења и оптерећења. Остале врсте испитивања укључене у тестирање перформанси су Испитивање шиљака, Запреминско испитивање, Испитивање издржљивости и Испитивање скалабилности . Стога је испитивање перформанси у основи врло широк појам.
Циљ тестирања перформанси:
Примарни циљ испитивања перформанси укључује успостављање референтног понашања система. Постоји низ индустријски дефинисаних мерила која треба испунити током тестирања перформанси.
Тестирање перформанси нема за циљ проналажење недостатака у апликацији. Такође не пролази или пада тест. Уместо тога, бави се критичним задатком постављања репер и стандард за апликацију . Тестирање перформанси треба обавити врло тачно. Помно праћење перформанси апликације / система је примарна карактеристика тестирања перформанси.
Репер и стандард апликације треба поставити у погледу атрибута попут брзине, времена одзива, протока, употребе ресурса и стабилности. Сви ови атрибути су тестирани у тесту перформанси.
На пример,
На пример, перформансе мреже апликација можете да тестирате путем графикона „Брзина везе у односу на кашњење“. Латенција је временска разлика између података који долазе од извора до одредишта.
Страници од 70 кб не би требало више од 15 секунди да се учита за најгору везу модема од 28,8 кбпс (латенција = 1000 милисекунди), док би се страница исте величине појавила у року од 5 секунди за просечну везу од 256 кбпс ДСЛ (латенција = 100 милисекунде).
Т1 веза од 1,5 Мбпс (латенција = 50 милисекунди) би имала репер перформанси постављен на 1 секунду да би постигла овај циљ.
Други пример би био модел захтева-одговора. Можемо поставити репер да временска разлика између генерисања захтева и потврде одговора треба да буде у опсегу к мс (милисекунде) и и мс, где су к и и стандардне цифре.
Успешан тест перформанси требало би да пројектује већину проблема са перформансама, који би могли бити повезани са базом података, мрежом, софтвером, хардвером итд.
# 2) Испитивање оптерећења
Испитивање оптерећења намењено је тестирању система сталним и сталним повећањем оптерећења система док не достигне граничну вредност. То је подскуп испитивања перформанси.
Испитивање оптерећења може се лако обавити коришћењем било ког одговарајућег алата за аутоматизацију који је доступан на тржишту. ВАПТ и ЛоадРуннер су два тако позната алата који помажу у испитивању оптерећења. Испитивање оптерећења такође је познато по именима попут Испитивање запремине и Испитивање издржљивости .
Међутим, обимно тестирање се углавном фокусира на базе података. Испитивање издржљивости тестира систем држећи га под значајним оптерећењем током дужег временског периода.
Једина сврха испитивања оптерећења је доделити систему највећи посао који може да обави за тестирање издржљивости система и праћење резултата. Овде је занимљива чињеница да се систем понекад испуни празним задатком да би одредио понашање система у ситуацији без оптерећења.
Атрибути који се надгледају у тесту оптерећења укључују вршне перформансе, пропусност сервера, време одзива под различитим нивоима оптерећења (испод прага прекида), адекватност Х / В окружења, колико корисничких апликација може да обради без утицаја на перформансе.
Циљ тестирања оптерећења:
Циљеви испитивања оптерећења укључују:
- Откривање недостатака у апликацији који се односе на преливање бафера, цурење меморије и лоше управљање меморијом. Проблеми који би се евентуално појавили као резултат испитивања оптерећења могу укључивати проблеме са уравнотежењем оптерећења, проблеме са ширином опсега, капацитетом постојећег система итд.
- Утврдити горњу границу свих компонената апликације попут базе података, хардвера, мреже итд., Тако да апликација може управљати предвиђеним оптерећењем у будућности.
- Да бисте поставили СЛА за апликацију.
На пример,
Размотримо да проверимо функционалност е-поште апликације која истовремено може бити преплављена са 1000 корисника. Сада 1000 корисника може активирати трансакције е-поштом (читати, слати, брисати, прослеђивати, одговарати) на много различитих начина.
Ако узмемо једну трансакцију по кориснику на сат, то би било 1000 трансакција на сат. Симулирајући 10 трансакција / корисника, могли бисмо да тестирамо сервер е-поште заузимајући га 10000 трансакција / сат.
Још један пример теста оптерећења приказан је на доњој слици:
Горња слика приказује тест оптерећења изведен у алату тзв ЈМетер . Овај тест се ради да би се идентификовало колико корисника систем може да поднесе. У овом тесту додаје се 100 корисника након сваких 30 секунди док оптерећење не достигне 1000 корисника. Сваки корак траје 30 секунди, а ЈМетер чека 30 секунди пре него што започне следећи корак.
Једном када оптерећење достигне 1000 нити, сви ће наставити да раде заједно 300 секунди (5 минута), а затим коначно заустављају 10 нити сваке 3 секунде.
# 3) Тестирање напрезања
У оквиру тестирања отпорности на стрес спроводе се разне активности за преоптерећење постојећих ресурса сувишним пословима у покушају да се систем сломи. Негативно тестирање , што укључује уклањање компонената из система, такође се врши у склопу испитивања напрезања.
Такође познат као испитивање замора , ово тестирање би требало да обухвати стабилност апликације тако што ће је тестирати изван њеног пропусног опсега.
Тако, у основи, тестирање отпорности на стрес процењује понашање апликације ван вршног оптерећења и нормалних услова.
Сврха тестирања отпорности на стрес је утврдити квар система и надгледати како се систем грациозно опоравља. Овде је изазов поставити контролисано окружење пре покретања теста како бисте могли прецизно ухватити понашање система у више наврата у најнепредвидљивијим сценаријима.
Проблеми који би се евентуално појавили као резултат тестирања отпорности на стрес могу укључивати проблеме са синхронизацијом, цурење меморије, тркачке услове итд. Ако стрес тест проверава како се систем понаша у ситуацији изненадног повећања броја корисника , онда се то назива тестом шиљака.
Ако се тестом стреса жели проверити одрживост система током одређеног временског периода помоћу полаганог повећања броја корисника, то се назива тестом натапања.
Циљ тестирања стреса:
Циљ тестирања отпорности на стрес је анализа извештаја након пада система како би се дефинисало понашање апликације након неуспеха.
Највећи изазов је осигурати да систем не оштети сигурност осетљивих података након квара. У успешном тестирању отпорности на стрес, систем ће се вратити у нормалу заједно са свим својим компонентама чак и након најстрашнијег квара.
На пример,
Као пример, програм за обраду текста попут Вритер1.1.0 компаније ОпенОффице.орг користи се за израду писама, презентација, прорачунских табела итд. Сврха нашег тестирања отпорности на стрес је да га учитамо са вишком знакова.
Да бисмо то урадили, више пута ћемо лепити ред података све док не достигне своју граничну вредност за руковање великим обимом текста. Чим величина знака достигне 65.535 знакова, једноставно би одбио да прихвати више података.
Резултат тестирања отпорности на стрес на програму Вритер 1.1.0 резултира резултатом да се не сруши под стресом и грациозно се носи са ситуацијом која осигурава да апликација ради исправно чак и под ригорозним стресним условима.
Још један пример теста оптерећења који приказује тест наглог наглог појачавања од 7000 корисника приказан је у наставку:
ФАК
Након што смо имали довољно дискусија о испитивању перформанси, тестирању отпорности на стрес и испитивању оптерећења, погледајмо сада нека повезана честа питања на која тестери траже одговор.
П # 1) Да ли су испитивање оптерећења и испитивање перформанси исти?
Одговор: Одговор на ово је „Не“. Нису исти.
До сада сте сигурно већ разумели разлику између испитивања перформанси и испитивања оптерећења. Можете погледати табеларни сажетак у наставку да бисте видели како испитивање перформанси и оптерећења има различите циљеве, атрибуте опсега за проучавање и проблеме које треба открити.
К # 2) Да ли је неправедно тестирање истовремено вршити тестирање напрезања када вршите испитивање оптерећења?
Одговор: Ово је такође често питање на многим интервјуима за испитивање софтвера и испитима за сертификацију, јер је неправедно паралелно радити стресно тестирање и тестирање оптерећења? Одговор на ово је „Не“. Није неправедно истовремено вршити тестирање отпорности на оптерећење.
Ниједан тест никада није неправедан. Као тестер, ваш посао је да пронађете проблеме. Међутим, стварност тестирања софтвера може се применити и било који проблем који откријете у овој ситуацији можда неће бити решен.
П # 3) Да ли је тестирање опоравка део тестирања перформанси?
Одговор: Да, испитивање опоравка је категорисано под испитивање перформанси, а понекад се врши и са испитивањем оптерећења. У испитивање опоравка , приступа се томе колико је добро апликација у стању да се опорави од грешака, падова, хардверских кварова и других сличних проблема.
У овој активности софтвер је присиљен да откаже, а затим се проверава да ли је у стању да се правилно опорави. На пример, изненадно поновно покретање система када је апликација покренута и затим провера интегритета података апликације.
П # 4) Да ли испитивање перформанси захтева кодирање?
Одговор: Тестирање перформанси не захтева да знате напредни ниво кодирања. Међутим, поседовање основних знања о програмирању је додатна предност.
На пример, ако користите ЈМетер, онда је добро за вас да знате основе Јаве. Може вам помоћи у отклањању грешака у одређеним стварима, а по потреби можете написати и своју скрипту.
П # 5) Шта је Спике тестирање у тестирању перформанси?
Одговор: У тестирању шиљака, оптерећење нагло повећава или смањује огроман број корисника и касније се примећује понашање система. Испитивање шиљака углавном се врши како би се проверило да ли је систем у стању да поднесе нагле промене терета.
Разлика између испитивања оптерећења и напрезања
Да резимирамо, посматрајмо главне разлике између испитивања оптерећења, испитивања отпорности на стрес као и испитивања перформанси у доњој табели:
Тестирање перформанси | Испитивање оптерећења | Стрес тестирање | |
---|---|---|---|
Домаин | Суперсет испитивања оптерећења и напрезања | Подгрупа испитивања перформанси. | Подгрупа испитивања перформанси. |
Обим | Веома широк опсег. Укључује - испитивање оптерећења, испитивање напрезањем, испитивање капацитета, испитивање запремине, испитивање издржљивости, испитивање шиљака, испитивање скалабилности и испитивање поузданости итд. | Ужи опсег у поређењу са испитивањем перформанси. Укључује испитивање запремине и испитивање издржљивости. | Ужи опсег у поређењу са испитивањем перформанси. Укључује испитивање намакања и испитивање шиљака. |
Главни циљ | Постављање референтне вредности и стандарда за апликацију. | Да бисте идентификовали горњу границу система, подесите СЛА за апликацију и погледајте како систем рукује великим количинама терета. | Да би се утврдило како се систем понаша под великим оптерећењима и како се опоравља од квара. У основи, да припремите апликацију за неочекивани скок промета. |
Лоад Лимит | И једно и друго - испод и изнад прага паузе. | До прага прекида | Изнад прага прекида |
Атрибути који се проучавају | Коришћење ресурса, поузданост, скалабилност, коришћење ресурса, време одзива, проток, брзина итд. | врхунске перформансе, проток сервера, време одзива под различитим нивоима оптерећења (испод прага прекида), адекватност Х / В окружења, број корисничких апликација које могу да поднесу, захтеви за уравнотежењем оптерећења итд. | Стабилност изнад капацитета пропусног опсега, време одзива (изнад прага прекида), итд. |
Проблеми идентификовани помоћу овог типа тестирања | Све грешке у перформансама, укључујући напухавање током извршавања, опсег за оптимизацију, питања везана за брзину, кашњење, пропусност итд. У основи - све што се односи на перформансе! | Проблеми са уравнотежењем оптерећења, проблеми с пропусношћу, проблеми са капацитетом система, лоше време одзива, проблеми са протоком итд. | Безбедносне рупе са преоптерећењем, проблеми са оштећењем података у ситуацији преоптерећења, спорости, цурења меморије итд. |
Разлика између испитивања оптерећења, напрезања и запремине
До сада већ знамо за испитивање оптерећења и оптерећења заједно са разликама између њих. Истражимо сада шта је испитивање запремине и по чему се разликује од испитивања оптерећења и испитивања отпорности на стрес.
Тестирање волумена је такође врста тестирања перформанси које се углавном фокусира на базу података.
У испитивању запремине проверава се како се систем понаша према одређеној количини података. Тако су базе података попуњене својим максималним капацитетом и надгледају се њихови нивои перформанси попут времена одзива и протока сервера.
Да би било врло једноставно, разлика између испитивања оптерећења, напрезања и запремине приказана је у наставку:
Испитивање запремине | Испитивање оптерећења | Стрес тестирање |
---|---|---|
Огромна количина података | Огроман број корисника | Превише корисника, превише података за пад система. |
Закључак
У овом упутству видели смо и кроз примере разумели како се тестирање перформанси, испитивање оптерећења и тестирање отпорности на стрес међусобно разликују и колики је обим сваке врсте тестирања.
Такође смо имали кратак увид у многе категорије у оквиру испитивања перформанси, као што су тестирање класа, тестирање опоравка, испитивање запремине итд., И схватили смо како се свака од њих разликује.
Надамо се да би вам овај водич био од велике помоћи да разумете практичну разлику између тестирања перформанси, оптерећења и оптерећења.
Погледајте наш предстојећи водич да бисте сазнали више о функционалном тестирању против тестирања перформанси.
подразумевани мрежни пролаз није стално доступан
=> Посетите овде за комплетну серију водича за тестирање перформанси
ПРЕВ Туториал |. | СЛЕДЕЋА Лекција
Препоручено читање
- Комплетан водич за тестирање перформанси са примерима
- Водич за тестирање напрезања за почетнике
- Комплетан водич за тестирање оптерећења за почетнике
- Тестирање оптерећења, стреса и перформанси веб апликација помоћу ВАПТ-а
- Испитивање оптерећења помоћу ХП ЛоадРуннер водича
- Тестирање перформанси у облаку: добављачи услуга тестирања оптерећења заснованог на облаку
- Функционално тестирање против тестирања перформанси: треба ли то радити истовремено?
- Испитивање оптерећења помоћу ЛоадУИ - бесплатног алата за тестирање учитавања отвореног кода