Veiktspējas pārbaudes apmācība: kas ir, veidi, metrika un piemērs

Veiktspējas pārbaude

Veiktspējas pārbaude ir programmatūras testēšanas process, ko izmanto, lai pārbaudītu programmatūras lietojumprogrammas ātrumu, reakcijas laiku, stabilitāti, uzticamību, mērogojamību un resursu izmantošanu noteiktā darba apjomā. Veiktspējas pārbaudes galvenais mērķis ir noteikt un novērst veiktspējas vājās vietas lietojumprogrammā. Tā ir veiktspējas inženierijas apakškopa un pazīstama arī kā Perf Testing.



Veiktspējas testēšanas uzmanības centrā ir programmatūras programmas pārbaude

  • Ātrums - nosaka, vai lietojumprogramma ātri reaģē
  • Mērogojamība - nosaka maksimālo lietotāja slodzi, ko programmatūra var apstrādāt.
  • Stabilitāte - nosaka, vai pielietojums ir stabils pie dažādām slodzēm

Šajā apmācībā jūs uzzināsit-



Kāpēc jāveic veiktspējas pārbaude?

Programmatūras sistēmas atbalstītās funkcijas un funkcionalitāte nav vienīgā problēma. Svarīga ir programmatūras lietojumprogrammas veiktspēja, piemēram, reakcijas laiks, uzticamība, resursu izmantošana un mērogojamība. Veiktspējas pārbaudes mērķis nav atrast kļūdas, bet novērst veiktspējas vājās vietas.

Veiktspējas pārbaude tiek veikta, lai ieinteresētajām personām sniegtu informāciju par to lietojumu attiecībā uz ātrumu, stabilitāti un mērogojamību. Vēl svarīgāk ir tas, ka veiktspējas testēšana atklāj, kas ir jāuzlabo, pirms produkts nonāk tirgū. Bez veiktspējas pārbaudes programmatūra, visticamāk, cietīs no tādām problēmām kā: lēna darbība, kamēr vairāki lietotāji to lieto vienlaikus, dažādu operētājsistēmu neatbilstības un slikta lietojamība.

Veiktspējas pārbaude noteiks, vai viņu programmatūra atbilst ātruma, mērogojamības un stabilitātes prasībām paredzamās darba slodzes apstākļos. Pieteikumi, kas tirgū tiek nosūtīti ar sliktu veiktspējas rādītāju neesošas vai sliktas veiktspējas pārbaudes dēļ, visticamāk, iegūs sliktu reputāciju un nesasniegs paredzamos pārdošanas mērķus.

Tāpat ir jāpārbauda veiktspējai svarīgas lietojumprogrammas, piemēram, kosmosa palaišanas programmas vai dzīvības glābšanas medicīnas aprīkojums, lai nodrošinātu, ka tās darbojas ilgu laiku bez novirzēm.



Saskaņā ar Dunn & Bradstreet datiem 59% Fortune 500 uzņēmumu katru nedēļu piedzīvo aptuveni 1,6 stundu dīkstāves. Ņemot vērā, ka vidējais Fortune 500 uzņēmums ar vismaz 10 000 darbinieku maksā 56 USD stundā, dīkstāves izmaksu darbaspēka daļa šādai organizācijai būtu 896 000 USD nedēļā, kas nozīmē vairāk nekā 46 miljonus USD gadā.

Tiek lēsts, ka tikai 5 minūšu dīkstāve vietnē Google.com (19. augusts – 13.) Meklēšanas gigantei izmaksās pat 545 000 USD.

Tiek lēsts, ka nesenā Amazon tīmekļa pakalpojumu pārtraukuma dēļ uzņēmumi zaudēja pārdošanas apjomu 1100 ASV dolāru apmērā sekundē.

Tāpēc veiktspējas pārbaude ir svarīga.

Veiktspējas pārbaudes veidi

  • Slodzes pārbaude - pārbauda lietojumprogrammas spēju darboties paredzamās lietotāju slodzes apstākļos. Mērķis ir noteikt veiktspējas vājās vietas, pirms programmatūras lietojumprogramma sāk darboties.
  • Stresa pārbaude - ietver lietojumprogrammas testēšanu ārkārtējas slodzes apstākļos, lai redzētu, kā tā tiek galā ar lielu trafiku vai datu apstrādi. Mērķis ir noteikt lietojumprogrammas lūzuma punktu.
  • Izturības pārbaude - tiek darīts, lai pārliecinātos, ka programmatūra spēj izturēt paredzamo slodzi ilgākā laika periodā.
  • Spike testēšana - pārbauda programmatūras reakciju uz pēkšņiem lieliem lietotāju radītās slodzes kāpumiem.
  • Skaļuma pārbaude - Saskaņā ar tilpuma pārbaudi liels Nr. no. Dati tiek aizpildīti datu bāzē, un tiek uzraudzīta programmatūras sistēmas uzvedība. Mērķis ir pārbaudīt lietojumprogrammu veiktspēju dažādos datu bāzes apjomos.
  • Mērogojamības pārbaude - Mērogojamības pārbaudes mērķis ir noteikt lietojumprogrammas efektivitāti, palielinot lietotāju skaitu, lai palielinātu apjomu. Tas palīdz plānot jaudas papildināšanu jūsu programmatūras sistēmai.

Bieži sastopamas veiktspējas problēmas

Lielākā daļa veiktspējas problēmu ir saistītas ar ātrumu, reakcijas laiku, ielādes laiku un sliktu mērogojamību. Ātrums bieži ir viens no vissvarīgākajiem lietojumprogrammas atribūtiem. Lēni strādājoša lietojumprogramma zaudēs potenciālos lietotājus. Veiktspējas pārbaude tiek veikta, lai pārliecinātos, ka lietotne darbojas pietiekami ātri, lai saglabātu lietotāja uzmanību un interesi. Apskatiet šo kopējo veiktspējas problēmu sarakstu un ievērojiet, kā ātrums ir bieži sastopams faktors daudzās no tām:

  • Ilgs ielādes laiks - Parasti ielādes laiks ir sākotnējais laiks, kas nepieciešams lietojumprogrammas palaišanai. Parasti tas būtu jāsamazina līdz minimumam. Lai gan dažas lietojumprogrammas nav iespējams ielādēt mazāk nekā minūtē, ielādes laiks, ja iespējams, ir jāsaglabā mazāk nekā dažas sekundes.
  • Slikts reakcijas laiks - Atbildes laiks ir laiks, kas paiet no brīža, kad lietotājs ievada datus lietojumprogrammā, līdz lietojumprogramma izdod atbildi uz šo ievadi. Parasti tam vajadzētu būt ļoti ātram. Atkal, ja lietotājam jāgaida pārāk ilgi, viņš zaudē interesi.
  • Slikta mērogojamība - Programmatūras produkts ir slikti mērogojams, ja tas nespēj apstrādāt paredzamo lietotāju skaitu vai ja tajā nav pietiekami plašs lietotāju loks. Slodzes pārbaude jādara, lai pārliecinātos, ka lietojumprogramma spēj apstrādāt paredzamo lietotāju skaitu.
  • Pudeļu pildīšana - Sašaurinājumi ir šķēršļi sistēmā, kas pasliktina vispārējo sistēmas darbību. Pudeļu bloķēšana ir tad, ja kodēšanas kļūdas vai aparatūras problēmas izraisa caurlaidspējas samazināšanos noteiktās slodzēs. Pudeļu bloķēšanu bieži izraisa viena kļūdaina koda sadaļa. Pārslodzes problēmas novēršanas atslēga ir atrast koda sadaļu, kas izraisa palēnināšanos, un mēģināt to novērst. Pudeļu bloķēšana parasti tiek novērsta, vai nu novēršot sliktos darbības procesus, vai pievienojot papildu aparatūru. Daži kopīgas veiktspējas vājās vietas ir
    • CPU izmantošana
    • Atmiņas izmantošana
    • Tīkla izmantošana
    • Operētājsistēmas ierobežojumi
    • Diska izmantošana

Veiktspējas pārbaudes process

Veiktspējas pārbaudei izmantotā metodoloģija var būt ļoti atšķirīga, taču darbības testu mērķis paliek nemainīgs. Tas var palīdzēt parādīt, ka jūsu programmatūras sistēma atbilst noteiktiem iepriekš noteiktiem veiktspējas kritērijiem. Vai arī tas var palīdzēt salīdzināt divu programmatūras sistēmu veiktspēju. Tas var arī palīdzēt identificēt jūsu programmatūras sistēmas daļas, kas pasliktina tās veiktspēju.

kā lejupielādēt youtube video tiešsaistē

Tālāk ir sniegts vispārējs process, kā veikt veiktspējas pārbaudi

  1. Identificējiet savu testēšanas vidi - Ziniet savu fiziskās pārbaudes vidi, ražošanas vidi un pieejamos testēšanas rīkus. Pirms testēšanas procesa sākšanas izprotiet testēšanas laikā izmantoto aparatūras, programmatūras un tīkla konfigurāciju informāciju. Tas palīdzēs testētājiem izveidot efektīvākus testus. Tas arī palīdzēs noteikt iespējamās problēmas, ar kurām testētāji var saskarties veiktspējas pārbaudes procedūru laikā.
  2. Nosakiet veiktspējas pieņemšanas kritērijus - Tas ietver mērķus un ierobežojumus caurlaidspējai, reakcijas laikiem un resursu piešķiršanai. Ir arī jānosaka projektu veiksmes kritēriji ārpus šiem mērķiem un ierobežojumiem. Testētājiem vajadzētu būt pilnvarotiem noteikt darbības kritērijus un mērķus, jo bieži vien projekta specifikācijās nav iekļauts pietiekami plašs veiktspējas kritēriju klāsts. Dažreiz to var vispār nebūt. Ja iespējams, atrast līdzīgu lietojumprogrammu, ar kuru salīdzināt, ir labs veids, kā noteikt darbības mērķus.
  3. Plāno un projektē veiktspējas testus - Nosakiet, kā galalietotāju lietojums var atšķirties, un nosakiet galvenos scenārijus, lai pārbaudītu visus iespējamos lietošanas gadījumus. Ir nepieciešams simulēt dažādus galalietotājus, plānot veiktspējas testu datus un izklāstīt, kādi rādītāji tiks apkopoti.
  4. Pārbaudes vides konfigurēšana - Pirms izpildes sagatavojiet testēšanas vidi. Tāpat sakārtojiet rīkus un citus resursus.
  5. Īstenot testa dizainu - Izveidojiet veiktspējas testus saskaņā ar testa plānu.
  6. Izpildiet testus - Izpildiet un uzraugiet testus.
  7. Analizējiet, noskaņojiet un pārbaudiet vēlreiz - Konsolidēt, analizēt un dalīties testa rezultātos. Pēc tam precīzi noregulējiet un vēlreiz pārbaudiet, vai veiktspēja uzlabojas vai samazinās. Tā kā uzlabojumi ar katru atkārtotu pārbaudi parasti kļūst mazāki, pārtrauciet, ja vājās vietas izraisa CPU. Tad jums, iespējams, būs iespēja palielināt CPU jaudu.

Veiktspējas pārbaudes metrika: pārraudzītie parametri

Galvenie parametri, kas tiek uzraudzīti veiktspējas pārbaudes laikā, ietver:

  • Procesora lietošana - laiks, ko procesors pavada, izpildot neaktīvus pavedienus.
  • Atmiņas izmantošana - fiziskās atmiņas apjoms, kas pieejams procesiem datorā.
  • Diska laiks - cik daudz laika disks ir aizņemts, izpildot lasīšanas vai rakstīšanas pieprasījumu.
  • Joslas platums - parāda bitus sekundē, ko izmanto tīkla saskarne.
  • Privāti baiti - process ir piešķīris baitu skaitu, ko nevar koplietot starp citiem procesiem. Tos izmanto, lai izmērītu atmiņas noplūdi un izmantošanu.
  • Atmiņa - izmantotās virtuālās atmiņas apjoms.
  • Atmiņas lapas sekundē - lapu skaits, kas ierakstīts vai nolasīts no diska, lai novērstu cietās lapas kļūdas. Cietas lapas kļūdas ir tad, ja kods, kas nav no pašreizējās darba kopas, tiek izsaukts no citurienes un iegūts no diska.
  • Lapas kļūdas sekundē - kopējais ātrums, kādā procesors apstrādā kļūdu lapas. Tas atkal notiek, ja procesam ir nepieciešams kods ārpus tā darba kopas.
  • CPU pārtrauc sekundē - ir vid. aparatūras pārtraukumu skaits, ko procesors saņem un apstrādā katru sekundi.
  • Diska rindas garums - ir vid. Nē. lasīšanas un rakstīšanas pieprasījumu rindā atlasītajam diskam izlases intervāla laikā.
  • Tīkla izejas rindas garums - izejas pakešu rindas garums paketēs. Viss, kas ir vairāk nekā divi, nozīmē kavēšanos, un ir jāaptur sašaurinājums.
  • Kopējais tīkla baitu skaits sekundē - ātrums, kādā baiti tiek nosūtīti un saņemti saskarnē, ieskaitot kadrēšanas rakstzīmes.
  • Reakcijas laiks - laiks no brīža, kad lietotājs ievada pieprasījumu, līdz atbildes pirmās rakstzīmes saņemšanai.
  • Caurlaidība - Novērtējiet, vai dators vai tīkls saņem pieprasījumus sekundē.
  • Savienojumu apvienošanas apjoms - lietotāju pieprasījumu skaits, kurus apmierina apvienotie savienojumi. Jo vairāk pieprasījumu apmierinās savienojumi baseinā, jo labāka būs veiktspēja.
  • Maksimālais aktīvo sesiju skaits - maksimālais sesiju skaits, kas var būt aktīvs vienlaikus.
  • Rezultātu attiecības - Tas ir saistīts ar to SQL paziņojumu skaitu, kurus apstrādā kešatmiņā saglabātie dati, nevis dārgas I/O darbības. Šī ir laba vieta, kur sākt risināt problēmas, kas saistītas ar sašaurinājumu.
  • Trāpījumi sekundē - nē trāpījumu skaits tīmekļa serverī katru slodzes pārbaudes sekundi.
  • Atcelšanas segments - datu apjoms, kas var tikt atcelts jebkurā laikā.
  • Datu bāzes slēdzenes - tabulu un datu bāzu bloķēšana ir jāuzrauga un rūpīgi jāpielāgo.
  • Visvairāk gaida - tiek uzraudzīti, lai noteiktu, kādu gaidīšanas laiku var samazināt, strādājot ar to, cik ātri dati tiek izgūti no atmiņas
  • Vītņu skaits - Lietojumprogrammas veselību var izmērīt ar Nr. pavedienu, kas darbojas un pašlaik ir aktīvi.
  • Atkritumu kolekcija - Tas ir saistīts ar neizmantotās atmiņas atgriešanu sistēmā. Ir jāuzrauga atkritumu savākšanas efektivitāte.

Veiktspējas testu piemēri

  • Pārbaudiet, vai atbildes laiks nepārsniedz 4 sekundes, ja vietnei vienlaikus piekļūst 1000 lietotāju.
  • Pārbaudiet, vai ielādētās lietojumprogrammas reakcijas laiks ir pieņemamā diapazonā, ja tīkla savienojums ir lēns
  • Pirms avārijas pārbaudiet maksimālo lietotāju skaitu, ko lietojumprogramma var apstrādāt.
  • Pārbaudiet datu bāzes izpildes laiku, kad vienlaicīgi tiek lasīti/rakstīti 500 ieraksti.
  • Pārbaudiet lietojumprogrammas un datu bāzes servera CPU un atmiņas izmantošanu maksimālās slodzes apstākļos
  • Pārbaudiet lietojumprogrammas reakcijas laiku zemas, normālas, mērenas un lielas slodzes apstākļos.

Faktiskās veiktspējas pārbaudes laikā neskaidri termini, piemēram, pieļaujamais diapazons, liela slodze utt., Tiek aizstāti ar konkrētiem skaitļiem. Veiktspējas inženieri nosaka šos skaitļus atbilstoši biznesa prasībām un lietojumprogrammas tehniskajai ainavai.

Veiktspējas pārbaudes rīki

Tirgū ir pieejami dažādi veiktspējas pārbaudes rīki. Testēšanai izvēlētais rīks būs atkarīgs no daudziem faktoriem, piemēram, atbalstītā protokola veidiem, licences izmaksām, aparatūras prasībām, platformas atbalsta utt. Zemāk ir populāri izmantoto testēšanas rīku saraksts.

  • LoadNinja - ir revolucionārs veids, kādā mēs ielādējam testu. Šis mākoņa slodzes pārbaudes rīks ļauj komandām ierakstīt un uzreiz atskaņot visaptverošus slodzes testus bez sarežģītas dinamiskas korelācijas un veikt šos slodzes testus reālās pārlūkprogrammās. Komandas var palielināt testa pārklājumu. & samazināt slodzes pārbaudes laiku par vairāk nekā 60%.
  • HP LoadRunner - ir populārākais veiktspējas pārbaudes rīks šodien tirgū. Šis rīks spēj simulēt simtiem tūkstošu lietotāju, pakļaujot lietojumprogrammas reālai slodzei, lai noteiktu to uzvedību paredzamās slodzes apstākļos. Loadrunner piedāvā virtuālu lietotāju ģeneratoru, kas simulē dzīvu cilvēku lietotāju darbības.
  • Jmeters - viens no vadošajiem rīkiem, ko izmanto tīmekļa un lietojumprogrammu serveru slodzes pārbaudei.

Bieži uzdotie jautājumi

Kādām lietojumprogrammām mums vajadzētu pārbaudīt veiktspēju?

Veiktspējas pārbaude vienmēr tiek veikta tikai sistēmām, kas balstītas uz klientu-serveri. Tas nozīmē, ka jebkurai lietojumprogrammai, kas nav uz klienta-servera balstīta arhitektūra, nav nepieciešama veiktspējas pārbaude.

Piemēram, Microsoft Calculator nav balstīts uz klientu-serveri, un tajā nedarbojas vairāki lietotāji; tāpēc tas nav kandidāts veiktspējas pārbaudei.

Kāda ir atšķirība starp veiktspējas pārbaudi un veiktspējas inženieriju

Ir svarīgi saprast atšķirību starp veiktspējas pārbaudi un veiktspējas inženieriju. Tālāk ir sniegta izpratne.

Veiktspējas pārbaude ir disciplīna, kas skar testēšana un ziņošana programmatūras lietojumprogrammas pašreizējā veiktspēja saskaņā ar dažādiem parametriem.

Veiktspējas inženierija ir process, kurā programmatūra tiek pārbaudīta un pielāgota, lai sasniegtu nepieciešamo veiktspēju. Šī procesa mērķis ir optimizēt vissvarīgāko lietojumprogrammas veiktspējas iezīmi, ti, lietotāja pieredzi.

Vēsturiski testēšana un regulēšana ir bijušas izteikti atsevišķas un bieži konkurējošas jomas. Tomēr dažu pēdējo gadu laikā vairākas testētāju un izstrādātāju kabatas ir patstāvīgi sadarbojušās, lai izveidotu regulēšanas komandas. Tā kā šīs komandas ir guvušas ievērojamus panākumus, ir ieviesta koncepcija par veiktspējas pārbaudes savienošanu ar veiktspējas regulēšanu, un tagad mēs to saucam par veiktspējas inženieriju.

Secinājums

Programmatūras inženierijā veiktspējas pārbaude ir nepieciešama pirms jebkura programmatūras produkta mārketinga. Tas nodrošina klientu apmierinātību un aizsargā ieguldītāja ieguldījumus pret produkta kļūmēm. Veiktspējas pārbaudes izmaksas parasti ir lielākas nekā kompensētas, uzlabojot klientu apmierinātību, lojalitāti un noturēšanu.