Тестирање на перформанси


Вовед

Тестирање на перформанси е тестирање за да се провери брзината, приспособливоста и стабилноста на софтверската апликација под различни нивоа на обем на работа. Со други зборови, тестирањето на перформансите гарантира дека софтверскиот производ ќе ја даде очекуваната брзина, приспособливост и стабилност кога е под очекуваниот обем на работа.

Потврдување на производот за неговата функционалност и карактеристики преку единица, интеграција и системски тестирања не е доволно ако производот е бавен или нестабилен. Оттука, тестирањето на перформансите има за цел да ги пронајде блокадите на перформансите на производот за нивно исправување.

Можете да прочитате за Тестирање на системот кои ги опфативме во претходните теми.

Дефиниција за тестирање на перформанси

Тестирањето на перформансите е нефункционално тестирање за мерење на перформансите на производот во однос на неговата одзивност и стабилност при различни оптоварувања. Целта на тестирањето на перформансите е да се идентификуваат условите под кои перформансите на апликацијата се под очекувањата.

Овие тест случаи имаат за цел да откријат дали софтверот ги исполнува очекуваните барања за време на одговор, приспособливост и стабилност на апликацијата. Тестирањето на перформансите се нарекува и Перф тестирање.

Параметри на тестирање на перформансите

  • Одговорност: Го мери времето на одговор на производот на различни нивоа на оптоварување.
  • Приспособливост: Ова е можноста на системот да го зголеми или намали бројот на барањата на корисниците на коишто ги исполнува.
  • Стабилност: Проверува дали системот е стабилен под различни нивоа на оптоварување.
  • Сигурност: Потврдува дали однесувањето или одговорот на системот е според очекувањата под различни нивоа на оптоварување.

Зошто тестирање на перформанси

  • Потврдувањето само на функционалноста не е доволно за да се обезбеди квалитет на производот. Не само што производот треба да ја има вистинската функционалност, туку треба да даде и оптимална брзина и перформанси.
  • Ова тестирање ги открива областите на производот што можат да дадат подобри перформанси.
  • Тестирањето на перформансите помага при зголемување на довербата на заинтересираните страни во производот дека може оптимално да работи за време на големи оптоварувања под очекуваните граници.
  • Производите со добра изведба дефинитивно имаат подобра продажба и добро држење на пазарот од оние со проблеми со перформансите.
  • Постојат неколку апликации критични за мисијата, како авиокомпании, инвестициско банкарство и медицински кои имаат многу строги критериуми за изведба, со што тестирањето на перформансите е многу клучно.

Прашања за изведба 

Проблемите со перформансите што треба да ги барате се како систем со бавно работење, систем за кој е потребно повеќе време да се вчита и оној што виси на одредена функција. Било кое од овие проблеми може да го влоши квалитетот на производот, а со тоа и продажбата во голема мера.

  • Бавна брзина: На моменти, производот работи со многу бавна брзина, како што е потребно многу време за да се вчитаат веб-страниците или да се прикаже одговорот. Ваквиот систем со бавно реагирање сигурно ќе ги изгуби своите корисници.
  • Време на оптоварување: Апликацијата трае долго за да стане и работи. Иако на секоја апликација и треба одредено време на вчитување ако апликацијата трае повеќе од вообичаеното време, тогаш треба да се процени.
  • Ниска приспособливост: Ако производот не дава оптимални перформанси кога бројот на кориснички барања се зголемува, има проблем со приспособливоста на производот.

Причини за проблеми со изведбата

Постојат неколку причини за проблеми со перформансите, како што се

  • Дизајнерскиот проток на системот го прави бавен
  • Може да има одредени блокади како резултат на неисправни блокови со кодови што предизвикува производот да виси за одреден период на оптоварувања. Овие исто така се нарекуваат тесни грла.
  • Може да има некои еколошки проблеми како мрежи, сервери или хардверски проблеми.
  • Лошата искористеност на ресурсите, како што се користењето на процесорот, бавните оперативни системи или врските со базата на податоци може да предизвикаат бавно време на одговор.

Видови на тестирање на перформанси

Перформансите имаат неколку аспекти. Оттука, постојат многу видови на тестирање на перформансите, секој од нив се фокусира на одредена област на параметрите на изведбата. Некои од нив се подолу:

  • Тест за стрес: На ова тестирање, тестерите ја подложуваат апликацијата на екстремни оптоварувања за да го проверат нејзиното однесување под тоа и да ја пронајдат точката на кршење на апликацијата. Ова тестирање го одредува максималното оптоварување што системот може да го издржи.
  • Тестирање на оптоварување: Ова тестирање ја става апликацијата на опсег на очекувани оптоварувања и потоа ги мери нејзините параметри на изведба.
  • Тестирање на приспособливост - Ова тестирање воспоставува приспособливост на системот со зголемување или намалување на оптоварувањата на корисникот. Затоа, тестира дали системот е способен да функционира кога барањата на корисниците се зголемуваат или намалуваат на бројот.
  • Тестирање на издржливост: Како што сугерира името, таа ја мери способноста на апликациите да работат со очекуваното оптоварување подолго време.
  • Тестирање на шила: Потврдува дека софтверот соодветно реагира за време на зголемениот обем на работа.
  • Тестирање на волумен: Ова тестирање се фокусира на обработка на голем обем на податоци. При ова тестирање, тестерите внесуваат голема количина на податоци во базата на податоци на инкрементален начин. Тогаш апликацијата работи со оваа огромна база на податоци за да ги измери нејзините перформанси.
  • Тестирање на сигурност: Потврдува дали системот е во состојба да се врати во својата нормална состојба по дефект или дефект. Исто така, се мери времето на системот за обновување.

Процес на тестирање на перформансите

Анализа на побарувања

Првиот чекор кон тестирање на перформансите е да се анализира производот според неговите одредници за барањата за изведба. Кои се очекувањата на заинтересираните страни во однос на брзината, приспособливоста и стабилноста на производот? Тоа е клучен чекор кој обезбедува дефинитивни цели кон идните чекори на тестирање на перформансите.

Измисли пристап на тест за изведба

Сега, кога целите се јасни, следниот чекор е како да ги постигнете. За тоа е важно изработката на стратегија за тестирање. Во стратегијата за тестирање, утврдуваме кој е опсегот на тековната фаза на тестирање на перформансите. Исто така, се утврдува каков вид на тестирање е потребен за исполнување на целите и деталите за ресурсите за тестирање. Тимот за тестирање излезе со видот и редоследот на тестирање на перформансите што ќе ги изврши. Исто така, тие ги избираат алатките што ќе ги користат. Следно, тие ја проценуваат тест-околината што ќе ја користат.

Развијте план за тестирање

По финализирањето на пристапот за тестирање, следниот чекор е да се најде детален план за тестирање. Планот за тестирање е документ што го води целиот процес на тестирање. Тоа детално ги запишува и анализира распоредот за тестирање, алатките за тестирање и околината. Дава детали за сите сценарија за тестирање на тестирањето и вклучува развој на тест случаи.

Поставување Тест околина

По финализирањето на алатката, треба да се постави тест-околината. Тоа целосно зависи од производот, хардверот, мрежата и алатката за тестирање. Поставена е соодветна средина за тестирање, користејќи која соодветно оптеретување може да се обезбеди на производот.

Извршување

Чекорите за тест случаи се извршуваат и резултатите од тестот се запишуваат. Реалните резултати од тестот се споредуваат со очекуваните резултати. Врз основа на споредбата, се регистрира поминување и паѓање. Идентификуваните грешки се запишуваат во алатката за пријавување на грешки за поправање.

Анализа на резултатите од тестот 

Анализата на резултатите од тестот се случува по завршувањето на фазата на извршување. Вкупните тест случаи положени и неуспешни се проценуваат. Тестерите подготвуваат извештаи за тестови со детали за бројот на опфатени тест случаи и тестовите што остануваат. Тоа ги покажува поминувањето и процентот на неуспех. Тестерите ги презентираат резултатите од тестовите пред сите засегнати страни.

Затворање на тестот

Процесот на тестирање е затворен по проценка на критериумите за излез. Критериумите за излез го наметнуваат процентот на извршување на тест случајот и процентот на поминување, процент за повторно тестирање. По исполнувањето на критериумите, фазата на тестирање на перформансите е затворена.

Алатки за тестирање на перформанси

Тестирањето на перформансите се базира на многу алатки. Постојат широк спектар на алатки достапни на пазарот за да помогнат во поставувањето случаи за тестирање на перформансите. Некои од најчесто користените се: -

  • Вклучувач на товар: Тоа е лиценцирана алатка од HP која е лидер на пазарот во областа на тестирање на перформансите. Оваа алатка помага да се зголеми бројот на кориснички оптоварувања на многу илјадници, а со тоа да се проценат перформансите на системот. Тоа симулира вистинско корисничко искуство.
  • Jmeter: Apache JMeter е алатка со отворен извор што помага при тестирање на оптоварување на веб-апликации. Користејќи ја оваа алатка, на апликацијата може да и се испратат голем број барања за проценка на перформансите.
  • Веб-оптоварување: Тоа е алатка за тестирање на оптоварување и изведба за веб-апликации. Тоа помага да се изврши тестирање на оптоварување и стрес на апликации базирани на Интернет преку генерирање на оптоварување од внатрешните машини, како и од облакот.
  • LoadNinja: Smartbear LoadNinja помага да се создадат сложени тестови за оптоварување. Може да ги замени емулаторите на товарот со вистински прелистувачи. Исто така, работи со голема брзина, добивајќи брзи резултати.
  • SmartMeter: Тоа е алатка за тестирање на оптоварување и изведба со нови комунални услуги за старост. Овозможува вграден прелистувач. Во оваа алатка, тестерите можат да креираат тест-случаи без скриптирање. Така, многу е лесно да се научи и спроведе.

Заклучок

Од најголема важност е да се тестира системот за неговите параметри на изведба. Без тестирање на перформансите, системот е ранлив на бавноста, распаѓањето или тесните грла за време на неговата работа. Ниту еден корисник не ужива да работи на систем со бавна реакција. Слично на тоа, системот што опфаќа големи товари може да ги оттргне своите корисници. Оттука, тестирањето на перформансите треба да биде дел од целокупната стратегија за тестирање на проектот за да се обезбеди успешен производ.

Референци

https://en.wikipedia.org/wiki/Software_performance_testing