Testarea eficienței de către. Cum se măsoară testarea. Testarea cutiei albe

  • 10.05.2020

De fiecare dată când eșuăm la o altă lansare, este o agitație. Oamenii vinovați apar imediat și adesea suntem noi, testerii. Poate că aceasta este soarta - să fie ultima verigă în ciclu de viață software, deci chiar dacă un dezvoltator petrece mult timp scriind cod, atunci nimeni nu crede că testarea este și oameni cu anumite capacități.
Nu poți sări deasupra capului tău, dar poți lucra 10-12 ore pe zi. Am auzit astfel de fraze foarte des)))

Când testarea nu satisface nevoile afacerii, atunci apare întrebarea, de ce să testeze deloc dacă nu au timp să lucreze la timp. Nimeni nu se gândește la ce s-a întâmplat înainte, de ce cerințele nu au fost scrise corect, de ce nu a fost gândită arhitectura, de ce codul a fost strâmb. Dar când aveți un termen limită și nu aveți timp să finalizați testarea, atunci încep imediat să vă pedepsească...

Dar au fost câteva cuvinte despre viața dificilă a unui tester. Acum la obiect 🙂

După câteva astfel de falsuri, toată lumea începe să se întrebe ce este greșit în procesul nostru de testare. Poate că dumneavoastră, ca lider, înțelegeți problemele, dar cum le transmiteți conducerii? Întrebare?

Managementul are nevoie de cifre, statistici. Cuvinte simple- v-au ascultat, au dat din cap, au spus - „Hai, fă-o” și gata. După aceea, toată lumea așteaptă un miracol de la tine, dar chiar dacă ai făcut ceva și nu a funcționat pentru tine, tu sau liderul tău primești din nou o pălărie.

Orice schimbare trebuie susținută de management, iar pentru ca managementul să o susțină, au nevoie de cifre, măsurători, statistici.
De multe ori am văzut cum au încercat să încarce diverse statistici din instrumentele de urmărire a sarcinilor, spunând că „Eliminăm valorile din JIRA”. Dar să înțelegem ce este o metrică.

O metrică este o valoare măsurabilă din punct de vedere tehnic sau procedural care caracterizează starea obiectului de control.

Să vedem - echipa noastră descoperă 50 de defecte în timpul testării de acceptare. E mult? Sau mic? Vă spun aceste 50 de defecte despre starea obiectului de control, în special despre procesul de testare?
Probabil ca nu.

Și dacă ți s-a spus că numărul de defecte găsite în timpul testării de acceptare este de 80%, în timp ce ar trebui să fie de doar 60%. Cred că este imediat clar că sunt o mulțime de defecte, respectiv, ca să spunem ușor, codul dezvoltatorilor este complet r ... .. nesatisfăcător din punct de vedere calitativ.

Cineva poate spune că de ce atunci testează? Dar voi spune că defectele sunt timpul de testare, iar timpul de testare este ceea ce ne afectează direct termenul limită.

Prin urmare, nu avem nevoie doar de metrici, avem nevoie de KPI-uri.

KPI este o metrică care servește ca indicator al stării obiectului de control. O condiție prealabilă este prezența unei valori țintă și a toleranțelor stabilite.

Adică, întotdeauna, atunci când construiești un sistem de metrici, trebuie să ai un obiectiv și abateri admisibile.

De exemplu, aveți nevoie (scopul dvs.) ca 90% din toate defectele să fie rezolvate de la prima iterație. În același timp, înțelegeți că acest lucru nu este întotdeauna posibil, dar chiar dacă numărul de defecte rezolvate prima dată este de 70%, acest lucru este și bine.

Adică îți stabilești un scop și o abatere acceptabilă. Acum, dacă numărați defectele din lansare și obțineți o valoare de 86%, atunci acest lucru cu siguranță nu este bine, dar nu mai este un eșec.

Din punct de vedere matematic, va arăta astfel:

De ce 2 formule? Acest lucru se datorează faptului că există un concept de metrică ascendentă și descendentă, i.e. când valoarea noastră țintă se apropie de 100% sau 0%.

Acestea. dacă vorbim, de exemplu, de numărul de defecte găsite în urma implementării în operațiune comercială, atunci cu cât mai puține, cu atât mai bine, iar dacă vorbim de acoperirea funcționalității cu cazuri de testare, atunci totul va fi invers.

În același timp, nu uitați despre cum să calculați aceasta sau acea măsurătoare.

Pentru a obține procentele, bucățile etc. de care avem nevoie, trebuie să calculăm fiecare metrică.

Pentru un exemplu ilustrativ, vă voi spune despre metrica „Promptitudinea procesării defectelor prin testare”.

Folosind o abordare similară, pe care am descris-o mai sus, formăm și un KPI pentru metrică pe baza valorilor și abaterilor țintă.

Nu vă faceți griji, nu este atât de greu în viața reală precum arată în imagine!

Ce avem?

Ei bine, este clar că numărul de lansare, numărul incidentului ....

Critic - cote. 5,

Major - cote. 3,

Minor - cote. 1.5.

Apoi, trebuie să specificați SLA pentru timpul de procesare a defectelor. Pentru a face acest lucru, se determină valoarea țintă și timpul maxim permis de retestare, similar cu modul în care am descris-o mai sus pentru calcularea valorilor.

Pentru a răspunde la aceste întrebări, vom trece direct la valoarea performanței și vom pune întrebarea imediat. Și cum se calculează indicatorul dacă valoarea unei cereri poate fi egală cu „zero”. Dacă unul sau mai mulți indicatori sunt egali cu zero, atunci indicatorul final va scădea foarte mult, așa că se pune întrebarea cum să echilibrăm calculul, astfel încât valorile zero, de exemplu, ale cererilor cu un factor de severitate de „1”, să nu fie foarte mult. afectează evaluarea noastră finală.

Greutatea este valoarea de care avem nevoie pentru a avea cel mai mic impact al cererilor asupra punctajului final cu o severitate redusa, iar invers, o cerere cu cea mai mare severitate are un impact serios asupra punctajului, cu conditia ca suntem restante la aceasta solicitare.

Pentru a nu avea neînțelegeri în calcule, vom introduce variabile specifice pentru calcul:

x este timpul efectiv petrecut pentru retestarea defectului;

y este abaterea maximă admisă;

z este factorul gravitațional.

Sau în limbaj comun, acesta este:

W=ESLI(X<=y,1,(x/y)^z)

Astfel, chiar dacă am depășit limitele noastre SLA, cererea noastră, în funcție de gravitate, nu ne va afecta în mod serios scorul final.

Toate așa cum sunt descrise mai sus:

X– timpul efectiv petrecut pentru retestarea defectului;

y– abaterea maximă admisă;

z este factorul gravitațional.

h- timpul planificat conform SLA
Nu mai știu cum să exprim asta într-o formulă matematică, așa că voi scrie într-un limbaj de programare cu operatorul DACĂ.

R = DACA(x<=h;1;ЕСЛИ(x<=y;(1/z)/(x/y);0))

În consecință, obținem că, dacă am atins obiectivul, atunci valoarea cererii noastre este egală cu 1, dacă am depășit abaterea admisă, atunci ratingul este egal cu zero și ponderile sunt calculate.

Dacă valoarea noastră este între țintă și abaterea maximă admisă, atunci, în funcție de factorul de severitate, valoarea noastră variază în intervalul .

Acum voi da câteva exemple despre cum va arăta în sistemul nostru de valori.

Fiecare cerere are propriul SLA în funcție de importanța lor (factor de severitate).

Ce vedem aici.

În prima solicitare, ne-am abătut de la valoarea țintă doar cu o oră și avem deja un rating de 30%, în timp ce la a doua solicitare am deviat și cu doar o oră, dar suma indicatorilor nu este deja de 30%, dar 42,86%. Adică, coeficienții de severitate joacă un rol important în formarea indicatorului final al cererii.

Totodată, la a treia cerere, am încălcat timpul maxim admisibil și ratingul este egal cu zero, dar ponderea cererii s-a modificat, ceea ce ne permite să calculăm mai corect impactul acestei solicitări asupra coeficientului final.

Ei bine, pentru a vă asigura de acest lucru, puteți calcula pur și simplu că media aritmetică a indicatorilor va fi de 43,21%, iar noi am obținut 33,49%, ceea ce indică un impact serios al solicitărilor de mare importanță.

Să modificăm valorile din sistem la 1 oră.

în același timp, pentru a 5-a prioritate, valoarea s-a modificat cu 6%, iar pentru a treia - cu 5,36%.

Din nou, importanța unei interogări îi afectează scorul.

Gata, obținem indicatorul final al metricii.

Ce este important!

Nu spun că utilizarea sistemului de metrici ar trebui făcută prin analogie cu valorile mele, doar sugerez o abordare pentru menținerea și colectarea acestora.

Într-o organizație, am văzut că și-au dezvoltat propriul cadru pentru colectarea de valori de la HP ALM și JIRA. E foarte tare. Dar este important să ne amintim că un astfel de proces de menținere a valorilor necesită o aderență serioasă la procesele de reglementare.

Ei bine, și cel mai important, doar tu poți decide cum și ce valori colectezi. Nu trebuie să copiați acele valori pe care nu le puteți colecta.

Abordarea este complexă, dar eficientă.

Încearcă-l și poate poți și tu!

Alexander Meshkov, Chief Operations Officer la Performance Lab, are peste 5 ani de experiență în testarea software-ului, managementul testelor și consultanța QA. Expert ISTQB, TPI, TMMI.

Testarea software-ului este evaluarea software-ului/produsului dezvoltat pentru a verifica capacitățile, capacitățile și conformitatea acestuia cu rezultatele așteptate. Există diferite tipuri de metode utilizate în domeniul testării și asigurării calității și vor fi discutate în acest articol.

Testarea software-ului este o parte integrantă a ciclului de dezvoltare a software-ului.

Ce este testarea software-ului?

Testarea software-ului nu este altceva decât testarea unei bucăți de cod în condiții de operare controlate și necontrolate, observarea rezultatelor și apoi examinarea dacă îndeplinește condiții predefinite.

Diverse seturi de cazuri de testare și strategii de testare au ca scop atingerea unui obiectiv comun - eliminarea erorilor și erorilor din cod și asigurarea performanței software precise și optime.

Metodologia de testare

Metodele de testare utilizate în mod obișnuit sunt testarea unitară, testarea de integrare, testarea de acceptare și testarea sistemului. Software-ul este supus acestor teste într-o anumită ordine.

3) Testarea sistemului

4) Teste de acceptare

Primul pas este un test unitar. După cum sugerează și numele, aceasta este o metodă de testare la nivel de obiect. Componentele software individuale sunt testate pentru erori. Acest test necesită cunoaștere precisă a programului și a fiecărui modul instalat. Astfel, această verificare este făcută de programatori, nu de testeri. Pentru a face acest lucru, sunt create coduri de testare care verifică dacă software-ul se comportă conform intenției.


Modulele individuale care au fost deja testate unitar sunt integrate între ele și verificate pentru defecțiuni. Acest tip de testare identifică în primul rând erorile de interfață. Testarea integrării se poate face folosind o abordare de sus în jos, urmând proiectarea arhitecturală a sistemului. O altă abordare este abordarea de jos în sus, care se face din partea de jos a fluxului de control.

Testarea sistemului

În această testare, întregul sistem este verificat pentru erori și bug-uri. Acest test este realizat prin interfațarea componentelor hardware și software ale întregului sistem, apoi este testat. Această testare este listată sub metoda de testare „cutie neagră”, în care sunt verificate condițiile de funcționare așteptate pentru utilizatorul software-ului.

Teste de acceptare

Acesta este ultimul test care se efectuează înainte de a preda software-ul către client. Se realizează pentru a se asigura că software-ul care a fost dezvoltat îndeplinește toate cerințele clienților. Există două tipuri de testare de acceptare - una care este efectuată de membrii echipei de dezvoltare este cunoscută sub denumirea de testare de acceptare internă (testare Alpha), iar cealaltă care este efectuată de client este cunoscută ca testare de acceptare externă.

Când testarea se face cu ajutorul clienților potențiali, se numește testare de acceptare a clienților. Când testarea este efectuată de utilizatorul final al software-ului, este cunoscută sub numele de testare de acceptare (testare beta).

Există mai multe metode de testare de bază care fac parte din regimul de testare a software-ului. Aceste teste sunt de obicei considerate autosuficiente în găsirea erorilor și erorilor în întregul sistem.

Testarea cutiei negre

Testarea cutiei negre se face fără cunoștințe despre funcționarea internă a sistemului. Testerul va stimula software-ul mediului utilizator prin furnizarea de diverse intrări și testarea ieșirilor generate. Acest test este, de asemenea, cunoscut sub denumirea de testare cutie neagră, cutie închisă sau testare funcțională.

Testarea cutiei albe

Testarea cutiei albe, spre deosebire de testarea cutiei negre, ia în considerare funcționarea internă și logica codului. Pentru a efectua acest test, testerul trebuie să aibă cunoștințe de cod pentru a cunoaște exact partea de cod care are erori. Acest test este cunoscut și sub denumirea de testare White-box, Open-Box sau Glass Box.

Testarea cutiei gri

Testarea cutie gri sau testarea cutie gri este o încrucișare între testarea cutie albă și cutie neagră, în care testatorul are doar cunoștințele generale despre produs necesare pentru a finaliza testul. Această verificare se face prin documentare și diagramă de flux informațional. Testarea este efectuată de utilizatorul final sau de utilizatorii care par a fi utilizatori finali.

Teste nefuncționale

Securitatea aplicației este una dintre sarcinile principale ale dezvoltatorului. Testarea de securitate verifică software-ul pentru confidențialitate, integritate, autentificare, disponibilitate și non-repudiere. Sunt efectuate teste individuale pentru a preveni accesul neautorizat la codul programului.

Testarea la stres este o tehnică în care software-ul este expus la condiții care sunt în afara condițiilor normale de funcționare ale software-ului. După atingerea punctului critic, rezultatele sunt înregistrate. Acest test determină stabilitatea întregului sistem.


Software-ul este testat pentru compatibilitatea cu interfețe externe precum sisteme de operare, platforme hardware, browsere web etc. Testul de compatibilitate verifică dacă produsul este compatibil cu orice platformă software.


După cum sugerează și numele, această tehnică de testare testează cantitatea de cod sau resurse utilizate de un program pentru a efectua o singură operație.

Această testare testează aspectul ușurinței de utilizare și al utilizării software-ului. Ușurința cu care un utilizator poate accesa un dispozitiv constituie punctul principal de testare. Testarea de utilizare acoperă cinci aspecte ale testării - capacitatea de învățare, performanță, satisfacție, memorabilitate și erori.

Teste în procesul de dezvoltare software

Modelul cascadă folosește o abordare de sus în jos, indiferent dacă este utilizat pentru dezvoltarea de software sau testare.

Principalii pași implicați în această metodologie de testare a software-ului sunt:

  • Analiza Nevoilor
  • Test de proiectare
  • Test de implementare
  • Testarea, depanarea și verificarea codului sau produsului
  • Implementare si intretinere

În această tehnică, treci la următorul pas doar după ce l-ai finalizat pe cel precedent. Modelul folosește o abordare non-iterativă. Principalul avantaj al acestei metodologii este abordarea sa simplificată, sistematică și ortodoxă. Cu toate acestea, are multe dezavantaje, deoarece erorile și erorile din cod nu vor fi descoperite până în faza de testare. Acest lucru poate duce adesea la pierderi de timp, bani și alte resurse valoroase.

Model Agil

Această metodologie se bazează pe o combinație selectivă a unei abordări secvențiale și iterative, pe lângă o varietate destul de mare de noi metode de dezvoltare. Dezvoltarea rapidă și progresivă este unul dintre principiile cheie ale acestei metodologii. Accentul se pune pe obținerea de rezultate rapide, practice și vizibile. Interacțiunea și participarea continuă cu clienții este o parte integrantă a întregului proces de dezvoltare.

Dezvoltare rapidă a aplicațiilor (RAD). Metodologia de dezvoltare rapidă a aplicațiilor

Numele vorbește de la sine. În acest caz, metodologia adoptă o abordare evolutivă rapidă, folosind principiul construcției componentelor. După înțelegerea diferitelor cerințe ale unui proiect dat, un prototip rapid este pregătit și apoi comparat cu setul așteptat de condiții și standarde de ieșire. Schimbările și modificările necesare se fac după o discuție comună cu clientul sau echipa de dezvoltare (în contextul testării software-ului).

Deși această abordare are partea ei de avantaje, poate să nu fie adecvată dacă proiectul este de natură mare, complex sau extrem de dinamic, în care cerințele sunt în continuă schimbare.

model în spirală

După cum sugerează și numele, modelul în spirală se bazează pe o abordare în care există un număr de cicluri (sau spirale) din toate etapele succesive din modelul cascadă. După finalizarea ciclului inițial, se efectuează o analiză și o revizuire amănunțită a produsului sau a rezultatelor obținute. Dacă rezultatul nu îndeplinește cerințele specificate sau standardele așteptate, se efectuează un al doilea ciclu și așa mai departe.

Procesul rațional unificat (RUP). Proces rațional unificat

Metodologia RUP este, de asemenea, similară cu modelul în spirală, în sensul că întreaga procedură de testare este împărțită în mai multe cicluri. Fiecare ciclu constă din patru etape - creare, dezvoltare, construcție și tranziție. La sfârșitul fiecărui ciclu, produsul/randamentul este revizuit și urmează un ciclu suplimentar (constând din aceleași patru faze), după cum este necesar.

Utilizarea tehnologiei informației crește în fiecare zi, iar importanța testării adecvate a software-ului a crescut semnificativ. Multe firme mențin un personal de echipe speciale pentru aceasta, ale căror capacități sunt la nivelul dezvoltatorilor.

Când este nevoie: pentru a evalua relația în echipă, interesul angajaților pentru obținerea de rezultate și motivația acestora.

Test de cocoșă

Instruire

Citește afirmațiile care descriu echipa ta și încercuiește numerele celor cu care ești de acord. Dacă credeți că afirmația nu este în întregime adevărată, atunci lăsați câmpul de răspuns necompletat.

Nu petrece mult timp gândindu-te la fiecare afirmație: câteva secunde sunt suficiente.

Amintiți-vă că rezultatele vor avea sens doar dacă sunteți sincer.

Test

1. Echipa noastră excelează în leadership.

2. Deciziile par a fi impuse asupra noastră.

3. Oamenii nu sunt încurajați să vorbească.

4. Într-o situație dificilă, fiecare își asumă interesele.

5. Comunicarea necesită îmbunătățiri.

6. Deciziile sunt luate la un nivel inadecvat de ierarhie.

7. Unii manageri nu sunt sinceri cu ei înșiși.

8. Rareori punem la îndoială substanța sau utilitatea întâlnirilor noastre.

9. Oportunități de dezvoltare insuficiente create.

10. Ne certăm adesea cu alte divizii.

11. Membrii echipei nu comunică bine între ei.

12. Este clar ce așteaptă organizația de la echipa noastră.

13. Comanda acceptată este rar pusă la îndoială.

14. În realitate, nimănui nu este clar încotro mergem.

15. Oamenii nu spun ceea ce cred cu adevărat.

16. Oamenii au poziția „coliba mea este pe margine”.

17. Într-o echipă, conflictul este distructiv.

18. Deciziile se bazează pe informații inadecvate.

19. Unii manageri nu sunt de încredere.

20. Nu învățăm din greșelile noastre.

21. Managerii nu-și ajută subordonații să învețe.

22. Relațiile cu alte grupuri sunt cool.

23. Nu ne gândim bine la poziţia noastră în cadrul organizaţiei.

24. Echipa noastră este receptivă „politic”.

25. De multe ori ne aflăm lipsiți de calificările potrivite.

26. Cu toții suntem foarte ocupați, dar se pare că nu avem timp de toate.

27. Sub covor se ascund chestiuni controversate.

28. Ar fi de ajutor dacă oamenii ar fi mai dispuși să-și recunoască greșelile.

29. Există neîncredere și ostilitate.

30. Oamenii nu au voie să ia decizii.

31. Puțină loialitate față de echipă.

32. Opiniile din afara nu sunt binevenite.

33. Ar trebui să aibă o rotație mare de muncă.

34. Rareori lucrăm eficient cu alte echipe.

35. Nu am reușit să asigurăm cooperarea cu alte echipe și unități.

36. Capacitatea de a lucra în echipă este un criteriu de selecție pentru admiterea în această organizație.

37. Nimeni nu face legăturile necesare cu alte grupuri.

38. Nu petrecem timpul necesar planificând viitorul.

39. Se evită întrebările delicate.

40. Se întâmplă ca cineva să fi fost „înjunghiat în spate”.

41. Nu chiar lucrăm împreună.

42. Oamenii greșiți iau decizii.

43. Managerii sunt slabi și nu sunt pregătiți să lupte și să solicite atenție punctului lor de vedere.

44. Nu primesc suficient feedback.

45. Sunt dezvoltate tipuri neadecvate de aptitudini.

46. ​​Ajutorul nu va veni din alte părți ale organizației.

47. Există o puternică neînțelegere între echipa noastră și sindicatele care au făcut presiuni asupra noastră.

48. Munca în echipă este răsplătită în această organizație.

49. Nu acordăm suficientă atenție relațiilor.

50. Nu avem o idee clară despre ceea ce se așteaptă de la noi.

51. Onestitatea nu este o trăsătură caracteristică echipei noastre.

52. Nu simt sprijin din partea colegilor mei.

53. Abilitățile și informațiile nu sunt bine distribuite.

54. Există personalități puternice care merg pe drumul lor.

55. Respectul de sine este descurajat.

56. Ar trebui să petrecem mai mult timp discutând despre metodele de lucru.

57. Managerii nu iau în serios dezvoltarea personală.

58. Alte părți ale organizației nu ne înțeleg.

59. Nu reușim să transmitem mesajul nostru către lumea exterioară.

60. Oamenii din echipă au legături bune cu alți membri ai organizației.

61. Adesea luăm decizii prea repede.

62. Un curs de acțiune care prețuiește individul are puțin de-a face cu ceea ce a fost realizat.

63. Prea multe secrete.

64. Conflictul este evitat.

65. Dezacordurile corupte.

66. Angajamentul față de soluții este scăzut.

67. Managerii noștri cred că o supraveghere mai mare îmbunătățește rezultatele.

68. Prea multe interdicții în echipa noastră.

69. Este clar că există oportunități mai bune într-o altă unitate.

70. Cheltuim multă energie pentru a ne proteja granițele.

71. Membrii echipei nu înțeleg ce se așteaptă de la ei.

72. Cultura organizației încurajează munca în echipă.

73. Nu acordăm suficientă atenție ideilor noi.

74. Prioritățile nu sunt clare.

75. Oamenii nu sunt suficient implicați în luarea deciziilor.

76. Prea multe acuzații și reproșuri reciproce.

77. Ei nu ascultă întotdeauna.

78. Nu folosim pe deplin aptitudinile pe care le avem.

79. Managerii cred că oamenii sunt în mod inerent leneși.

80. Petrecem mult timp făcând și nu petrecem suficient timp gândind.

81. Dorința individului de a crește nu este încurajată.

82. Nu încercăm să înțelegem punctul de vedere al altor echipe.

83. Nu reușim să ne ascultăm clienții.

84. Echipa lucrează în conformitate cu scopurile organizației.

Multumesc pentru raspunsuri!

Cheia testului Woodcock pentru evaluarea performanței echipei

Descriere

Testul Woodcock este conceput pentru a măsura performanța echipei. Vă permite să evaluați relația în echipă, interesul angajaților pentru obținerea de rezultate și motivația acestora. De asemenea, se ține cont de loialitatea companiei și de nivelul de interacțiune între departamentele organizației.

Principiul testării este simplu. Fiecare membru al echipei, indiferent de poziție, completează un chestionar care include 84 de afirmații. Apoi, conform unui tabel special, rezultatele sunt calculate și analizate.

Dacă vă îndoiți că membrii echipei vor răspunde sincer la întrebări, încercați să asigurați anonimatul testării. În general, acesta este deja un indicator al relației din echipă. Cu toate acestea, testarea este încă utilă, deoarece rezultatele sale vă permit să identificați mai precis deficiențele în munca echipei.

În plus, este foarte util să comparați rezultatele testelor managerilor și subordonaților acestora. Acest lucru vă permite să evaluați atmosfera din echipă și să determinați gradul de încredere al subordonaților conducerii.

Cheia testului

Transferați răspunsurile evidențiate din chestionar în tabelul cu rezultate. Numărați numărul de puncte din fiecare coloană. Scrieți cantitatea în rândul „Total”.

Tabelul cu rezultate

DAR LA DIN D E F G H eu J La L
1 2 3 4 5 6 7 8 9 10 11 12
13 14 15 16 17 18 19 20 21 22 23 24
25 26 27 28 29 30 31 32 33 34 35 36
37 38 39 40 41 42 43 44 45 46 47 48
49 50 51 52 53 54 55 56 57 58 59 60
61 62 63 64 65 66 67 68 69 70 71 72
73 74 75 76 77 78 79 70 81 82 83 84
Total

Transferați numărul de coloane de pe rândul „Total” în tabel.

În ultimii ani, testarea automatizată a devenit o tendință în domeniul dezvoltării de software, într-un anumit sens, implementarea sa a devenit un „feed to fashion”. Cu toate acestea, implementarea și suportul testelor automate este o procedură care necesită foarte mult resurse și, în consecință, costisitoare. Utilizarea pe scară largă a acestui instrument duce cel mai adesea la pierderi financiare semnificative fără niciun rezultat semnificativ.

Cum puteți folosi un instrument destul de simplu pentru a evalua eficacitatea posibilă a utilizării autotestelor pe un proiect?

Ce este definit ca „eficiență” automatizării testelor?

Cel mai comun mod de a evalua eficiența (în primul rând economic) este calculul randamentului investiției(ROI). Se calculează destul de simplu, fiind raportul dintre profit și costuri. Imediat ce valoarea ROI trece de unu, soluția returnează fondurile investite în ea și începe să aducă altele noi.

În cazul automatizării, profit înseamnă economii la testarea manuală. În plus, profitul în acest caz poate să nu fie evident - de exemplu, rezultatele găsirii defectelor în procesul de testare ad-hoc de către ingineri, al căror timp a fost eliberat din cauza automatizării. Un astfel de profit este destul de dificil de calculat, așa că puteți fie să faceți o presupunere (de exemplu, + 10%), fie să o omiteți.

Cu toate acestea, economisirea nu este întotdeauna scopul implementării automatizării. Un exemplu este viteza de executare a testului(atât în ​​ceea ce privește viteza de efectuare a unui test, cât și în ceea ce privește frecvența testării). Din mai multe motive, viteza de testare poate fi critică pentru o afacere - dacă investițiile în automatizare sunt răsplătite cu profitul primit.

Alt exemplu - excluderea „factorului uman” din procesul de testare a sistemului. Acest lucru este important atunci când acuratețea și corectitudinea execuției operațiunilor sunt critice pentru afacere. Prețul unei astfel de erori poate fi mult mai mare decât costul dezvoltării și menținerii unui autotest.

De ce să măsori performanța?

Măsurarea eficienței ajută la răspunsul la întrebările: „Merită implementarea automatizării pe un proiect?”, „Când ne va aduce implementarea un rezultat semnificativ?”, „Câte ore de testare manuală vom înlocui?”, „Este posibil să înlocuiți 3 ingineri de testare manuală cu 1 inginer de testare automată? si etc.

Aceste calcule pot ajuta la formularea obiectivelor (sau a valorilor) pentru echipa de testare automată. De exemplu, economisind X ore pe lună de testare manuală, reducând costul echipei de testare cu Y unități.