Ce este Benchmark Testing?
โก Rezumat inteligent
Benchmark Testing establishes a repeatable, measured standard for application performance so that every future release can be compared against it. Without a baseline, a performance result is a number with nothing to judge it by.

รnainte de a รฎnvฤศa Benchmark Testing, sฤ รฎnศelegem...
Benchmark รฎn testarea performanศei
A Benchmark รฎn testarea performanศei este o mฤsurฤ sau un punct de referinศฤ faศฤ de care produsele sau serviciile software pot fi comparate pentru a evalua mฤsurile de calitate. Cu alte cuvinte, Benchmark รฎnseamnฤ un standard stabilit care ajutฤ la determinarea calitฤศii unui produs sau serviciu software. Putem compara un produs sau serviciu software pentru a-i evalua calitatea.
De exemplu, o echipฤ de fotbal are un punct de referinศฤ pentru ca un jucฤtor sฤ se califice ca a jucฤtor de ligฤ premierฤ. Abilitatea stabilitฤ pentru reper ar putea fi un numฤr de goluri marcate รฎn ultimele cinci sezoane, sau posesia mingii รฎn prima pauzฤ, sau un numฤr minim de jocuri jucate รฎn turneul local etc.
Ce este Benchmark Testing?
Benchmark Testarea mฤsoarฤ un set repetabil de rezultate cuantificabile care serveศte drept punct de referinศฤ faศฤ de care produsele/serviciile pot fi comparate. Scopul rezultatelor testelor de referinศฤ este de a compara versiunile software prezente ศi viitoare cu benchmark-urile lor respective.
Un punct de referinศฤ trebuie sฤ fie repetabil. De exemplu, cu fiecare iteraศie a testului de รฎncฤrcare, dacฤ timpii de rฤspuns variazฤ prea mult, performanศa sistemului trebuie evaluatฤ. Timpul de rฤspuns trebuie sฤ fie stabil รฎntre diferitele condiศii de รฎncฤrcare.
Un punct de referinศฤ trebuie sฤ fie cuantificabile. De exemplu, experienศa utilizatorului nu poate fi cuantificatฤ รฎn cifre, dar timpul petrecut de un utilizator pe o paginฤ web datoritฤ unei bune interfeศe de utilizare poate fi cuantificat.
Testarea comparativฤ nu este un termen legat doar de testarea software-ului, ci se ocupฤ ศi de testarea hardware ศi este consideratฤ una dintre cele mai importante sarcini din lumea afacerilor.
รn acest tutorial, vom discuta referinศe pentru o aplicaศie client-server sau, cu alte cuvinte, o aplicaศie web. Testarea benchmark se poate face pentru urmฤtoarele servicii,
- Compatibilitatea cu browserul
- Link-uri sparte
- Conformitate HTML
- Timp de รฎncฤrcare
- Accesibilitate
- Popularitatea link-ului
Why Benchmark Testing is Important
La nivel de afaceri, testarea benchmark-ului poate fi de ajutor รฎn stabilire
- Cรขt de bine funcศioneazฤ o aplicaศie bazatฤ pe web รฎn raport cu concurenศii
- Cum experimenteazฤ diferitele tipuri de clienศi timpul de rฤspuns ศi disponibilitatea unui site
- Se asigurฤ cฤ site-urile web respectฤ standardele ศi cele mai bune practici
- Permite evaluarea furnizorilor de servicii terศi รฎnainte de a face o escrocherietracdecizie de luare a deciziilor
- Permite depistarea greศelilor care trebuie evitate
Crearea unui plan de testare de referinศฤ
Un plan de testare este cel mai important element al procesului de testare de referinศฤ. Planul de testare de referinศฤ urmeazฤ paศii de mai jos-
- Scalare ศi invocare a sarcinii de lucru
- Colectaศi ศi stocaศi mฤsuri pentru testarea de referinศฤ
- Definiศi intervalul de timp necesar ศi punctul terminal al unui proces de testare
- Pregฤtiศi un plan de rezervฤ pentru a depฤศi orice eศec nou caz de testare
- Decideศi autoritatea de a apela รฎncheierea procesului de final
Cum sฤ faceศi testarea comparativฤ
Existฤ 4 faze implicate รฎn testarea benchmark:
Pasul 1) Faza de planificare
- Identificarea ศi prioritizarea standardelor ศi cerinศelor
- Decideศi criteriile de referinศฤ
- Definiศi procesul de testare de referinศฤ
Pasul 2) Faza de analizฤ
- Identificaศi cauza principalฤ a erorii pentru a รฎmbunฤtฤศi calitatea
- Stabilirea obiectivelor pentru procesul de testare
Pasul 3) Faza de integrare
- รmpฤrtฤศiศi rezultatele cu persoana รฎn cauzฤ ศi obศineศi aprobarea
- Stabiliศi obiective funcศionale
Pasul 4) Faza de acศiune
- Elaboraศi planul de testare ศi documentaศia
- Implementaศi acศiunile specificate รฎn fazele anterioare ศi monitorizaศi progresul
- Rulaศi procesul continuu
Componentele testฤrii benchmark
Sistemele diferite au grade diferite de complexitate ศi necesitฤ tehnici diferite pentru testarea aplicaศiilor.
Existฤ 3 componente majore ale testฤrii benchmark. Sunt
- Specificaศii privind sarcina de lucru: Determinarea tipului ศi frecvenศei cererilor care urmeazฤ a fi transmise sistemului testat.
- Specificaศii pentru metrici: Determinaศi ce element trebuie mฤsurat de ex.; Viteza de descฤrcare
- Specificaศii de mฤsurare: Determinarea modului de mฤsurare a elementelor specificate pentru a gฤsi valori adecvate
Things to Consider While Benchmark Testing
Pentru desfฤศurarea cu succes a testelor de referinศฤ, trebuie luate รฎn considerare urmฤtoarele fapte.
- Consecvenศฤ ศi control sunt mฤsuri importante pentru efectuarea testฤrii benchmark.
- รnศelegeศi arhitectura sistemului pentru a proiecta criteriile de testare ศi datele de testare
- Examinaศi datele statice iniศiale ศi actualizaศi รฎn funcศie de numฤrul de utilizatori
- Verificaศi funcศionalitatea โResetareโ oriunde este necesar ศi definiศi rata de tranzacศie pe secundฤ (aceasta se referฤ รฎn mod special la tranzacศiile utilizatorilor cu o bazฤ de date)
- รmpฤrศiศi elementele sistemului รฎn funcศie de funcศionalitฤศile acestuia
- Fiecare sistem are arhitecturฤ ศi design diferite, care trebuie luate รฎn considerare la efectuarea testฤrii benchmark
- Asiguraศi-vฤ cฤ toate componentele software sunt รฎn stare de funcศionare
- Sistemul de operare ศi driverele de suport ar trebui sฤ funcศioneze cu acurateศe
- Eliminaศi fiศierele de preluare preliminarฤ ศi temporare din sistem รฎnainte de a rula un benchmark
- รnchideศi toate procesele ศi aplicaศiile care ruleazฤ รฎn fundal
- Verificaศi actualizฤrile sistemelor de operare ศi configuraศiile din lumea realฤ
Cadre de testare de referinศฤ
Cadrele de testare de referinศฤ ajutฤ la รฎndeplinirea unor sarcini fundamentale pentru verificฤrile performanศei. Aceste sarcini fundamentale includ:
- Acces la baza de date
- Compoziศie pe partea serverului
- Serializare JSON
- Configuraลฃie
Cadrul de referinศฤ 2.0 & TechEmpower sunt cele mai utilizate cadre de testare de referinศฤ.
Sฤ aruncฤm o privire la TechEmpower. Vom arunca o privire rapidฤ asupra caracteristicilor sale principale.
- Este un cadru open-source pentru realizarea sarcinilor de referinศฤ
- Are nevoie de configuraศia corectฤ a mediului de benchmarking
- Existฤ รฎn principal douฤ moduri, cum ar fi Modul Benchmark pentru compararea rezultatelor ศi Modul de verificare pentru cei care nu sunt experศi
- Sunt necesare mai multe fiศiere care sunt unice ศi pot varia รฎn consecinศฤ de la un sistem la altul
- Include un โFiศier de configurare de referinศฤโ care defineศte un set de instrucศiuni de testare ศi metadate pentru un program de referinศฤ
- Se bazeazฤ pe mai multe limbi, cum ar fi Java, Python, Ruby, PHP, JavaScript, Perl, C, Groovy, Haskell, Scala etc.
- Object โ Relational Mapper (ORM) este folosit pentru a efectua teste pe baze de date, serializare JSON etc.
Instrumente de testare de referinศฤ
Instrumentele de testare de referinศฤ sunt clasificate รฎn consecinศฤ. Ne vom รฎnrola unul cรขte unul.
Instrumente pentru testare Windows PC-uri:
Instrumente pentru testarea performanศei CPU:
- Cinebench
- Geekbench
Instrumente pentru testarea vitezei sistemului ศi a bateriilor dispozitivelor mobile:
- Phoronix (Linux)
- Procesor UserBenchmark (Test de referinศฤ CPU)
- Vellamo (performanศฤ de navigare pe web)
Testarea benchmark poate fi efectuatฤ ศi cu Android telefoane ศi tablete. Printre toate, Nota de trecere este un instrument de testare de referinศฤ bine-cunoscut ศi utilizat pe scarฤ largฤ.
Cum se รฎncadreazฤ acest test รฎn familia de teste de performanศฤ
Testarea performanศei este un termen generic. Variantele de mai jos diferฤ doar prin forma sarcinii aplicate ศi durata de timp รฎn care este menศinutฤ, motiv pentru care sunt atรขt de des confundate รฎntre ele.
| Tipul testului | Model de รฎncฤrcare | รntrebare รฎi rฤspunde |
|---|---|---|
| Testare de sarcinฤ | Sarcinฤ maximฤ aศteptatฤ, duratฤ scurtฤ | รศi รฎndeplineศte sistemul obiectivele รฎn condiศii normale de trafic de vรขrf? |
| Testare stresanta | Crescut peste capacitate pรขnฤ la defecศiune | Unde se rupe ศi cedeazฤ cu graศie? |
| Testarea vรขrfurilor | Creศtere bruscฤ ศi extremฤ, apoi retragere | Supravieศuieศte ศi รฎศi revine dupฤ un ศoc รฎn trafic? |
| Testare de anduranศฤ | Sarcina normalฤ menศinutฤ timp de mai multe ore | Se degradeazฤ performanศa รฎn timp? |
| Testarea prin imersie | Sarcinฤ susศinutฤ pe o perioadฤ extinsฤ | Existฤ scurgeri de memorie sau epuizare a resurselor? |
| Testare de stabilitate | Sarcinฤ variabilฤ รฎn funcศie de condiศii | Sistemul rฤmรขne fiabil chiar ศi atunci cรขnd se schimbฤ condiศiile? |
| Testarea volumului | Utilizatori obiศnuiศi, volum foarte mare de date | Se descurcฤ pe mฤsurฤ ce baza de date creศte? |
Testele de anduranศฤ ศi testarea la รฎmbibare sunt adesea tratate ca sinonime. รn uzul comun, acestea sunt: โโambele suportฤ o sarcinฤ susศinutฤ pentru o perioadฤ lungฤ de timp. Acolo unde echipele le disting, testarea de anduranศฤ se concentreazฤ asupra creศterii timpilor de rฤspuns, รฎn timp ce testarea prin absorbศie se concentreazฤ pe consumul de resurse, cum ar fi memoria, identificatorii de fiศiere ศi pool-urile de conexiuni. Rularea uneia dintre ele vฤ oferฤ de obicei dovezi pentru ambele.
Benchmark Testing: Key Takeaways
- รn ingineria software, testarea comparativฤ oferฤ un set repetabil de rezultate cuantificabile asupra performanศei unui sistem.
- Este util pentru exercitarea condiศiilor de รฎncฤrcare ศi determinarea comportamentului sistemului รฎmpotriva atacurilor DDoS.
- Specificaศiile de sarcinฤ de lucru, valorile ศi specificaศiile de mฤsurare sunt componente majore ale testฤrii de referinศฤ.
- Mai multe instrumente ศi cadre sunt utilizate pentru a efectua teste de referinศฤ rapid ศi eficient.
- Testarea comparativฤ este utilฤ ศi pentru dispozitivele mobile.

