logo

Veikimo testavimas

Šiame skyriuje sužinosime apie našumo testavimą, kodėl mums to reikia, našumo testavimo tipus ir veikimo testavimo procesą.

Toliau pateikiamos temos, kurias suprasime šiame skyriuje:

Kas yra našumo tikrinimas?

Tai svarbiausia nefunkcinio testavimo dalis.

Programos veikimo tikrinimas taikant tam tikrą apkrovą vadinamas našumo testavimu.

Paprastai šis testavimas apibrėžia, kaip greitai serveris atsako į vartotojo užklausą.

Atlikdami programos našumo testavimą, sutelksime dėmesį į įvairius veiksnius, pvz Reakcijos laikas, apkrova ir stabilumas paraiškos.

Atsakymo laikas: Atsakymo laikas – tai laikas, per kurį serveris atsako į kliento užklausą.

Įkelti: Čia įkelti reiškia, kad kada N skaičius vartotojų, naudojančių programą vienu metu arba siunčiančių užklausą serveriui vienu metu.

Stabilumas: Dėl stabilumo faktoriaus galime pasakyti, kad kai N skaičius vartotojų naudojasi programa vienu metu tam tikrą laiką.

Kada naudojame našumo testavimą?

Atliksime našumo testavimą, kai programinė įranga bus stabili ir perkelta į gamybinę versiją, o ją vienu metu gali pasiekti keli vartotojai, todėl gali kilti tam tikrų našumo problemų. Kad išvengtų šių našumo problemų, bandytojas atlieka vieną našumo tikrinimo etapą.

Kadangi tai yra nefunkcinis testavimas, o tai nereiškia, kad visada naudojame našumo testavimą, našumo testavimą atliekame tik tada, kai programa yra funkcionaliai stabili.

Pastaba: našumo testavimo negalima atlikti rankiniu būdu, nes negalima išlaikyti brangaus ir tikslaus rezultato.

Veiklos testavimo tipai

Toliau pateikiami našumo tikrinimo tipai:

java anoniminė funkcija
    Apkrovos bandymas Streso testavimas Mastelio keitimo testavimas Stabilumo testas
Veikimo testavimas

Leiskite mums aptarti po vieną, kad gautumėte išsamų supratimą apkrova, stresas, mastelio keitimas, ir Stabilumas veikimo testavimas.

Apkrovos bandymas

Apkrovos bandymas naudojamas patikrinti programos veikimą, taikant tam tikrą apkrovą, kuri yra mažesnė už norimą apkrovą arba lygi jai, vadinama apkrovos bandymu.

Pavyzdžiui: Žemiau esančiame paveikslėlyje 1000 vartotojų yra norima apkrova , kurią duoda klientas, ir 3/sekundę yra įvartis kuriuos norime pasiekti atlikdami apkrovos testavimą.

Veikimo testavimas

Testavimas nepalankiausiomis sąlygomis

Testavimas nepalankiausiomis sąlygomis yra testavimas, kurio metu tikrinamas programos elgesys, taikant didesnę nei norima apkrovą.

Pavyzdžiui: Jei paimtume aukščiau pateiktą pavyzdį ir padidintume norimą apkrovą nuo 1000 iki 1100 vartotojų, o tikslas yra 4 per sekundę. Atliekant testavimą nepalankiausiomis sąlygomis pagal šį scenarijų, jis bus sėkmingas, nes apkrova yra didesnė (100 daugiau) nei faktinė norima apkrova.

Veikimo testavimas

Mastelio keitimo testavimas

Programos našumo tikrinimas padidinant arba sumažinant apkrovą tam tikrose svarstyklėse (vartotojo nėra) vadinamas mastelio keitimo testavimas . Didėjančio mastelio ir mažėjančio mastelio testavimas vadinamas mastelio keitimo testavimu.

Mastelio keitimo testavimas yra padalintas į dvi dalis, kurios yra tokios:

    Didėjančio mastelio testavimas Mažėjančio mastelio testavimas

Didėjančio mastelio testavimas

Tai yra bandymai, kur mes padidinti vartotojų skaičių tam tikru mastu kol sulauksime avarijos taško. Norėdami rasti didžiausią programos pajėgumą, naudosime didinimo mastelio testą.

Mažėjančio mastelio testavimas

Mažėjančio mastelio testavimas naudojamas, kai apkrovos bandymas nepraeina, tada pradėkite mažinant Nr. vartotojų tam tikru intervalu kol bus pasiektas tikslas. Kad būtų lengva nustatyti kliūtį (klaidą).

Stabilumo testas

Programos veikimą tikrina taikant apkrovą tam tikrą laiką yra žinomas kaip Stabilumo testas .

Našumo testavimo pavyzdys

Paimkime vieną pavyzdį, kur tai padarysime išbandyti programos elgseną, kai norima apkrova yra mažesnė nei 1000 arba lygi 1000 vartotojų .

Žemiau esančiame paveikslėlyje matome, kad 100 aukštyn vartotojų skaičius nuolat didėja, kad galėtų patikrinti maksimali apkrova , kuris taip pat vadinamas didinimo mastelio testavimas .

eilutėje yra java
    1 scenarijus:Kai turėsime 1000 vartotojų, kaip norima apkrova, o 2,7/s yra tikslo laikas, šie scenarijai praeis atliekant apkrovos testą, nes atliekant apkrovos testavimą, mes sutelksime dėmesį į ne. vartotojų, o pagal reikalavimą yra lygus 1000 vartotojų.2 scenarijus:Kitame scenarijuje norimą apkrovą padidinsime 100 vartotojų, o tikslo laikas padidės iki 3,5sek. Šis scenarijus bus sėkmingas, jei atliksime testavimą nepalankiausiomis sąlygomis, nes čia faktinė apkrova yra didesnė nei (1100) norima apkrova (1000).3 scenarijus:Šiuo atveju, jei norimą apkrovą padidinsime tris kartus
    1200 → 3,5sek: [jis ne mažesnis arba lygus norimai apkrovai, todėl ir bus Nepavyko ]
    1300 → 4sek: [ji ne mažesnė arba lygi norimai apkrovai. t.y., Nepavyko ]
    1400 → Sudužo
Veikimo testavimas

1 pastaba: tūrio ir mirkymo bandymas yra bandymo tipas, bet ne veikimo tikrinimas.

Tūrio bandymas

Apimties testavimas yra testavimas, kuris padeda mums patikrinti programos elgseną įterpiant didžiulį apkrovos kiekį duomenų atžvilgiu, vadinamas apimties testavimu, ir čia mes sutelksime dėmesį į duomenų perdavimo spartų skaičių, o ne į vartotojų skaičių. .

Užrašas 2:
Tūris yra talpa, o apkrova yra kiekis, ty apkrovos bandymas reiškia ne. vartotojų, o apimties testavimas reiškia duomenų kiekį.

Mirkymo bandymas

Atlikdami tokio tipo bandymus, mes patikrinsime programos elgseną aplinkoje, kuri ilgą laiką nepalaikoma, vadinama mirkymo testavimu.

Paprastai mirkymo testavimas yra neigiamas bandymo tipas, nes jau žinome, kad serveris arba aplinka nepalaiko.

Veikimo testavimo procesas

Veikimo testavimas negali būti atliekamas rankiniu būdu, nes:

  • Mums reikia daug išteklių, ir tai tapo brangesniu metodu.
  • Ir tikslumo nepavyks išlaikyti, kai atsako laiką stebime rankiniu būdu.

Našumo tikrinimo procesas bus baigtas šiais veiksmais:

  • Nustatykite našumo scenarijus
  • Planuoti ir projektuoti veikimo testo scenarijų
  • Konfigūruokite bandymo aplinką ir paskirstykite apkrovą
  • Vykdykite bandomuosius scenarijus
  • Rezultatas
  • Analizės rezultatas
  • Nustatykite kliūtis
  • Iš naujo paleiskite testą
Veikimo testavimas

Jei atliksime a teigiamas srautas našumo tikrinimo procesą, jis gali atlikti toliau nurodytą procesą:

Nustatykite našumo scenarijus

Pirmiausia nustatysime našumo scenarijus, atsižvelgdami į toliau nurodytus veiksnius:

Dažniausiai tokie scenarijai: Tai reiškia, kad galime rasti veikimo scenarijus pagal scenarijus, kurie dažniausiai naudojami kaip ir Gmail programa; mes atliksime prisijungti, gautieji, siųsti elementus, parašyti laišką ir atsijungti .

Svarbiausi scenarijai: Kritiniai scenarijai reiškia reguliariai naudojamus ir svarbius verslui „Gmail“ programoje prisijungti, kurti, gautieji ir atsijungti .

Didžiulis duomenų sandoris: Jei turime daug duomenų, tai reiškia, kad tuo pačiu metu programa naudojasi n skaičius vartotojų.

Kai nustatysime veiklos scenarijus, pereisime prie kito žingsnio.

Planuoti ir projektuoti veikimo testo scenarijų

Šiame žingsnyje įdiegsime įrankius „Test Engineer Machine“ ir pasiesime bandomąjį serverį, tada parašysime scenarijų pagal bandymo scenarijus ir paleisime įrankį.

Kai baigsime rašyti scenarijų, pereisime prie kito žingsnio.

Konfigūruokite bandymo aplinką ir paskirstykite apkrovą

Parašius testavimo scenarijus, prieš vykdymą sutvarkysime testavimo aplinką. Taip pat valdyti įrankius, kitus išteklius ir paskirstyti apkrovą pagal „Naudojimo modelį“ arba paminėti trukmę ir stabilumą.

Vykdykite bandomuosius scenarijus

Baigę paskirstyti apkrovą, vykdysime, patvirtinsime ir stebėsime bandomuosius scenarijus.

Rezultatas

Įvykdę bandomuosius scenarijus gausime testo rezultatą. Ir patikrinkite, ar rezultatas atitinka tikslą per nurodytą reakcijos laiką, ar ne, o atsako laikas gali būti maksimalus, vidutinis ir minimalus.

Jei atsakymas neatitiks reikiamo laiko atsakymo, mes pasirinksime neigiamas srautas kur bus atlikti šie veiksmai:

Analizės rezultatas

Pirmiausia išanalizuosime testo rezultatą, ar jis atitinka atsakymo laiką, ar ne.

java sąrašus

Nustatykite kliūtis

Po to mes nustatysime kliūtis (klaida arba našumo problema ). Ir kliūtis gali atsirasti dėl tokių aspektų, kaip kodo problema, techninės įrangos problema (standartinis diskas, RAM procesorius), tinklo problemos, ir programinės įrangos problema (operacinė sistema) . O radę butelio kaklelį, koncertuosime derinimas (taisymas arba reguliavimas) išspręsti šią kliūtį.

Iš naujo paleiskite testą

Kai pašalinsime kliūtis, iš naujo paleiskite bandomuosius scenarijus ir patikrinkite rezultatą, ar jis atitinka reikiamą tikslą, ar ne.

Problema kyla atliekant našumo testavimą

Atliekant programos našumo testavimą, gali kilti tam tikrų problemų, kurios taip pat vadinamos našumo problema .

Veikimo problemos yra tokios:

    Reagavimo laiko problema Mastelio keitimo problema Butelio kaklelis Greičio problema

Reagavimo laiko problema

Atsakymo laikas reiškia, kaip greitai serveris reaguoja į kliento užklausą. Jei vartotojo užklausa neįvykdoma per nurodytą atsakymo laiką, gali būti, kad vartotojas gali prarasti susidomėjimą konkrečia programine įranga ar programa. Štai kodėl programa ar programinė įranga turi turėti puikų atsako laiką, kad greitai reaguotų į vartotojo užklausą.

Mastelio keitimo problema

Mastelio keitimo problemos kyla, kai programa negali vienu metu priimti n skaičiaus vartotojų ir numatomų vartotojų užklausų. Todėl ir darysime didinimo mastelio testavimas (patikrinkite didžiausią programos talpą) ir mažėjančio mastelio testavimas (kai numatomas laikas nesutampa su tikruoju laiku).

Butelio kaklelis

Butelio kaklelis yra neoficialus klaidos pavadinimas, kuris atsiranda, kai programa yra apribota vienu komponentu ir daro neigiamą poveikį sistemos veikimui.

Pagrindinės kliūčių priežastys yra programinės įrangos problemos (susijusios su operacine sistema), aparatinės įrangos problemos (susijusios su standžiuoju disku, RAM ir procesoriumi), ir kodavimo problema, ir tt

Toliau pateikiami dažniausiai pasitaikantys našumo trūkumai:

  • Atminties panaudojimas
  • Disko naudojimas
  • CPU panaudojimas
  • Operacinės sistemos apribojimai
  • Tinklo panaudojimas

Greičio problemos

Kai atliekame programos našumo testavimą, programa turėtų būti greitesnė, kad sudomintų ir sudomintų vartotoją, nes jei programos greitis yra lėtas, ji gali prarasti vartotojo susidomėjimą programa.

Veikimo tikrinimo įrankiai

Rinkoje turime įvairių tipų našumo tikrinimo įrankių, kai kurie iš jų yra komerciniai ir atvirojo kodo įrankiai.

Komerciniai įrankiai: LoadRunner[HP], WebLOAD, NeoLoad

Atvirojo kodo įrankis: JMeter

von Neumann architektūra

LoadRunner

Tai vienas iš galingiausių našumo testavimo įrankių, kuris naudojamas siekiant palaikyti platų protokolų spektrą, technologijų skaičių ir taikomųjų programų aplinkų našumo testavimą.

Jis greitai nustato dažniausiai pasitaikančias našumo problemų priežastis. Taip pat tiksliai prognozuokite programos mastelį ir pajėgumus.

JMeter

„Apache JMeter“ programinė įranga yra atvirojo kodo įrankis, kuris yra visiškai „Java“ programa, skirta funkciniams bandymams įkelti ir našumui matuoti.

Paprastai jis buvo skirtas žiniatinklio taikomųjų programų testavimui, bet dabar išplėstas ir įtraukiant kitas testavimo funkcijas.

„Apache JMeter“ naudojamas statinių ir dinaminių išteklių bei dinaminių žiniatinklio programų našumui patikrinti.
Jis gali būti naudojamas norint atkurti didelę serverio, tinklo ar objekto, serverių grupės apkrovą, kad būtų galima patikrinti jo stiprumą arba analizuoti bendrą našumą esant skirtingiems apkrovų tipams.

WebLOAD

WebLOAD testavimo įrankis, naudojamas apkrovos testavimui, našumo testavimui ir žiniatinklio programų nepalankiausiomis sąlygomis testavimui.

WebLOAD įrankis sujungia našumą, mastelį ir vientisumą kaip vieną procesą, skirtą žiniatinklio ir mobiliųjų programų patvirtinimui.

NeoLoad

„Neotys“ kuria testavimo įrankį, vadinamą „NeoLoad“. „NeoLoad“ naudojama našumo bandymo scenarijams išbandyti. „NeoLoad“ pagalba galime rasti kliūties sritis žiniatinklyje ir mobiliųjų programėlių kūrimo procese.

NeoLoad testavimo įrankis yra greitesnis, palyginti su tradiciniais įrankiais.

Be jų, yra ir kitų įrankių Elektrinė apkrova, žiniatinklio streso įrankis, „LoadUI Pro“, „StressStimulus“, „LoadView“, „LoadNinja“ ir „RedLine13“, kuri padeda patikrinti programinės įrangos ar programos veikimą.