stress testing guide
Свеобухватан водич за тестирање стреса за почетнике:
Наглашавање било чега изван одређене тачке резултира озбиљним последицама по људе, машину или програм. Или узрокује озбиљну штету или је потпуно разбија.
Слично томе, у овом упутству ћемо научити како тестирати стресне веб апликације заједно са њиховим ефектима.
Да бисмо избегли трајно оштећење апликација или веб локација када су под стресом, тј. Под великим оптерећењем, морамо да пронађемо тачку прелома и заузврат решење да избегнемо такве услове. Само помислите како би било када би ваша веб локација за куповину пала током божићне продаје. Колики би био губитак?
У наставку су наведени неки примери стварних случајева у којима је изузетно важно тестирати на стрес апликацију или веб локацију:
питања нивоа интервјуа за тестер почетног нивоа
# 1) Комерцијалне апликације за куповину или веб локације морају да изврше тестирање отпорности на стрес јер оптерећење постаје веома велико током фестивала, продаје или периода посебне понуде.
#два) Финансијске апликације или веб локације морају да изврше стрес тест јер се оптерећење повећава у тренутцима када се повећа удео компаније, многи људи се пријављују на своје рачуне да би куповали или продавали, веб локације за куповину на мрежи преусмеравају „Нет-банкаре“ на плаћање итд.
# 3) Веб или апликације за е-пошту морају бити тестиране на стрес.
# 4) Веб локације или апликације за друштвене мреже, блогови итд. Морају бити тестирани на стрес итд.
Шта ћете научити:
- Шта је стрес тестирање и зашто тестирамо стрес?
- Стратегија за испитивање напрезања
- Тестирање стреса за мобилне апликације
- Разлика између испитивања оптерећења и испитивања напрезања
- Примери тест случајева
- 5 најбољих софтвера за тестирање напрезања
- Закључак
- Препоручено читање
Шта је стрес тестирање и зашто тестирамо стрес?
Тестирање напрезања је дефинисано као поступак тестирања хардвера или софтвера на стабилност у условима великог оптерећења. Ово тестирање се врши како би се пронашла нумеричка тачка када ће се систем покварити (у смислу броја корисника и захтева сервера итд.) И повезаног руковања грешкама за исте.
Током тестирања на стрес, апликација која се тестира (АУТ) се бомбардује великим оптерећењем у одређеном временском периоду да би се потврдила тачка прекида и видело се колико је добро урађено руковање грешкама.
Пример: МС Ворд може да прикаже поруку о грешци „Не реагује“ када покушате да копирате датотеку од 7-8 ГБ.
Засули сте Ворд великом датотеком и није могао да обради тако велику датотеку и као резултат, она је обешена. Обично убијамо апликације из Таск Манагер-а када престану да реагују, а разлог томе је што се апликације стресују и престају да реагују.
Следе неки технички разлози за тестирање отпорности на стрес:
- Да би се верификовало понашање система под ненормалним или екстремним оптерећењем.
- Да би се пронашла нумеричка вредност корисника, захтева итд., Након чега се систем може прекинути.
- Отклоните грешку љубазно показујући одговарајуће поруке.
- Да се добро припремите за такве услове и предузмете мере предострожности попут чишћења кода, чишћења ДБ, итд.
- Да бисте верификовали руковање подацима пре него што се систем поквари, тј. Да бисте видели да ли су подаци избрисани, сачувани или не итд.
- Да се провери безбедносна претња под таквим ломним условима итд.
Стратегија за испитивање напрезања
Ово је врста нефункционалног тестирања и ово тестирање се обично врши када се функционално тестирање веб локације или апликације заврши. Тест случајеви, начин тестирања, па чак и алати за тестирање могу се понекад разликовати.
Следе неки напутци који би вам помогли да стратегијујете свој процес тестирања:
- Утврдите сценарије, функционалности итд. Којима ће се највише приступати и који могу имати тенденцију да сломе систем. Као и за финансијску апликацију, најчешће коришћена функција је пренос новца.
- Утврдите оптерећење које систем може доживети у датом дану, тј. И максимално и минимално.
- Направите засебну план испитивања , сценарио, тест случај и тест сет.
- Користите 3-4 различита рачунарска система за тестирање са различитом меморијом, процесором итд.
- Корисник 3-4 различита прегледача за веб апликације са различитим верзијама.
- У идеалном случају, пронађите вредност испод тачке прекида, на тачки прекида и вредност након тачке прекида (када систем уопште неће реаговати), креирајте тестни слој и податке око њих.
- У случају веб апликација, покушајте и стрес тест са спором мрежом.
- Не прелазите са закључком тестова у само једну рунду или две, изводите исте тестове најмање 5 рунди, а затим закључите своје налазе.
- Пронађите идеално време одзива веб сервера и које је време на тачки прекида.
- Пронађите понашање апликације на тачки прелома на различитим тачкама апликације, на пример, приликом једноставног покретања апликације, пријављивања, извршавања неке акције након пријаве итд.
Тестирање стреса за мобилне апликације
Стрес тестирање за матичне мобилне апликације се мало разликује од оног код веб апликација. У изворним апликацијама врши се стрес тест за најчешће коришћене екране додавањем огромних података.
Следе неке провере које су урађене у оквиру овог тестирања за изворне мобилне апликације:
- Апликација се не руши када се приказују огромни подаци. Као за апликацију за слање е-поште, око 4-5 лакх примљених е-адреса, за апликације за куповину, исту количину картица са ставкама итд.
- Померање је без грешака и апликација се не спушта док се померате нагоре или надоле.
- Корисник би требао бити у могућности да види детаље картице или изврши неку радњу на картици са огромне листе.
- Слање лакших ажурирања из апликације на сервер, попут означавања ставке као „Омиљене“, додавања ставке у корпу за куповину итд.
- Покушајте да учитате апликацију са огромним подацима на 2Г мрежи, када апликација виси или се сруши, требало би да прикаже одговарајућу поруку.
- Покушајте с краја на крај када постоје огромни подаци и спора 2Г мрежа итд.
Следећа би требала бити ваша стратегија за тестирање на мобилним апликацијама:
- Препознајте екране на којима се налазе картице, слике итд., Како бисте циљали те екране са огромним подацима.
- Слично томе, идентификујте функционалности које ће се најчешће користити.
- Док правите тестни кревет, покушајте да користите средње и ниже телефоне.
- Покушајте истовремено да тестирате на паралелним уређајима.
- Избегавајте ово тестирање на емулатору и симулаторима.
- Избегавајте тестирање Вифи веза јер су јаке.
- Покушајте да направите барем један тест стреса на терену итд.
Разлика између испитивања оптерећења и испитивања напрезања
С.бр. | Тестирање напрезања | Испитивање оптерећења |
---|---|---|
један | Ово тестирање се врши како би се открила тачка прелома система. | Ово тестирање се врши ради верификације перформанси система под очекиваним оптерећењем. |
два | Ово испитивање се врши како би се утврдило да ли ће се систем понашати онако како се очекивало ако оптерећење пређе нормалну границу. | Ово тестирање се врши ради провере времена одзива сервера за очекивано специфично оптерећење. |
3 | Руковање грешкама је такође верификовано у овом тесту. | Руковање грешкама није интензивно тестирано. |
4 | Ово такође проверава безбедносне претње, цурење меморије итд. | Ниједно такво тестирање није обавезно. |
5 | Проверава стабилност система. | Проверава поузданост система. |
6 | Тестирање се врши са више од максимума. могући број корисника, захтева итд. | Тестирање се врши са максималним бројем корисника, захтева итд. |
Испитивање напрезања против испитивања оптерећења
Примери тест случајева
Тест случајеви које ћете створити за тестирање зависе од апликације и њених захтева. Пре креирања тест случајева, уверите се да знате подручја фокуса, тј. Функционалности које ће се ломити под условом абнормалног оптерећења.
Следи неколико примера тестова које можете укључити у своје тестирање:
- Проверите да ли се приказује исправна порука о грешци када систем достигне тачку прекида, тј. Пређе максимални бр. дозвољених корисника или захтева.
- Проверите горњи тест случаја за различите комбинације РАМ-а, процесора, мреже итд.
- Проверите да ли систем ради како се очекивало када је максимум не. корисника или се захтеви обрађују. Такође проверите горњи тест случаја за различите комбинације РАМ-а, процесора, мреже итд.
- Проверите да ли је више од дозвољеног бр. корисника или захтева обављају исту операцију (попут куповине истих предмета са веб локације за куповину или вршења трансфера новца итд.), а ако систем постане неодговарајући, приказује се одговарајућа порука о грешци о подацима (нису сачувани? - зависи од спровођење).
- Проверите да ли је више од дозвољеног бр. корисника или захтева извршавају различите радње (као што се један корисник пријављује, један корисник покреће апликацију или веб везу, један корисник бира производ итд.) и ако систем постане неодговарајући, приказује се одговарајућа порука о грешци о подацима (није сачувано? - зависи од примене).
- Проверите да ли је време одзива корисника или захтева преломне тачке у вредности прихватања.
- Проверите перформансе апликације или веб локације када је мрежа врло спора, требало би да се прикаже одговарајућа порука о грешци за стање „истека времена“.
- Потврдите све горе наведене случајеве за сервер на коме је покренуто више апликација да бисте проверили да ли је погођена друга апликација итд.
Пре извођења тестова, уверите се да:
- Сви функционални кварови апликације која се тестира су отклоњени и верификовани.
- Комплетан систем од краја до краја је спреман и тестиран је на интеграцији.
- Нису обављене нове пријаве кодова које ће утицати на тестирање.
- Други тимови су обавештени о вашем распореду тестирања.
- Резервни системи се креирају у случају неких озбиљних проблема.
5 најбољих софтвера за тестирање напрезања
Када се тестирање стреса ради ручно, то је такође врло сложен и напоран посао. Такође вам можда неће донети очекиване резултате.
Алати за аутоматизацију могу вам пружити очекиване резултате и помоћу њих је релативно лако створити потребну пробу. Може се догодити да алати које користите за уобичајено функционално тестирање можда неће бити довољни за тестирање отпорности на стрес.
шта је мрежни безбедносни кључ?
Стога је на вама и вашем тиму да одлучите да ли желе посебан алат искључиво за ово тестирање. За друге је корисно и то што апартман водите ноћу тако да њихов рад неће бити ометен. Помоћу алата за аутоматизацију можете заказати да се пакет покреће ноћу, а резултати ће бити спремни за вас следећег дана.
Следи листа најчешће препоручених алата:
# 1) Лоад Руннер:
ЛоадРуннер је алат који је ХП дизајнирао за испитивање оптерећења, али се такође може користити за тестове отпорности на стрес.
Користи ВуГен, тј. Виртуал Усер Генератор, за креирање корисника и захтева за тестирање оптерећења и стреса. Овај алат има добре извештаје о анализи који могу помоћи у извлачењу резултата у облику графикона, графикона итд.
# 2) Неолоад:
Неолоад је плаћени алат који је користан у тестирању веб и мобилних апликација.
Може да симулира више од 1000 корисника да верификује перформансе система и пронађе време одзива сервера. Такође се интегрише са Цлоуд-ом за тестирање оптерећења и оптерећења. Пружа добру скалабилност и врло је једноставан за употребу.
# 3) ЈМетер:
ЈМетер је алат отвореног кода који ради са ЈДК 5 и новијим верзијама. Фокус овог алата је углавном на тестирању веб апликација. Такође се може користити за тестирање веза ЛДАП, ФТП, ЈДБЦ базе података итд.
# 4) Брусилица:
Гриндер је алат отвореног кода и заснован на Јави који се користи за испитивање оптерећења и напрезања.
Параметризација се може вршити динамички док су тестови у току. Има добро извештавање и тврдње које ће вам помоћи да боље анализирате резултате. Има конзолу која се може користити као ИДЕ за креирање и уређивање тестова, а агенти за креирање терета за потребе тестирања.
# 5) ВебЛоад:
Веблоад алат има бесплатно, као и плаћено издање. Ово бесплатно издање омогућава стварање до 50 корисника.
Овај алат подржава проверу стреса и на вебу и на мобилним апликацијама. Подржава различите протоколе као што су ХТТП, ХТТПС, ПУСХ, АЈАКС, ХТМЛ5, СОАП итд. Има ИДЕ, конзолу за генерисање оптерећења, контролну таблу за анализу и интеграције (за интеграцију са Јенкинс-ом, АПМ алатима итд.).
Закључак
Тестирање напрезања се у потпуности фокусира на тестирање система под екстремним оптерећењима како би се пронашла тачка прекида и видело да ли се приказују одговарајуће поруке када систем не реагује. Током тестирања наглашава меморију, процесор итд. И проверава колико се добро опорављају.
Тестирање напрезања је врста нефункционалног тестирања и обично се врши након функционалног тестирања. Када се захтева и испитивање оптерећења, тада се ово испитивање може извршити као крајњи случај испитивања оптерећења. Исти алат за аутоматизацију се у 90% случајева може користити и за испитивање оптерећења и оптерећења.
Надам се да бисте стекли сјајан увид у концепт тестирања напрезања !!
Препоручено читање
- Испитивање оптерећења помоћу ХП ЛоадРуннер водича
- Испитивање перформанси вс испитивање оптерећења вс тестирање напрезања (разлика)
- Комплетан водич за тестирање оптерећења за почетнике
- Најбољи алати за тестирање софтвера 2021. године (КА Тест Аутоматион Тоолс)
- Алфа тестирање и бета тестирање (потпун водич)
- Водич за почетнике за тестирање продирања у веб апликације
- Тестирање оптерећења, стреса и перформанси веб апликација помоћу ВАПТ-а
- Функционално тестирање вс нефункционално тестирање