Multe tipuri de metode de testare software

click fraud protection

Înainte ca software-ul să fie livrat pentru uz public sau comercial, programatorii petrec ore întregi rezolvând fiecare eroare, produsul rămânând în limb până când toate părțile interesate sunt mulțumite.

Giganții software din Silicon Valley precum Google și Facebook vor livra adesea produse populare pe piață, în ciuda erorilor cu prioritate redusă ale software-ului lor. Investitorii și milioane de utilizatori loiali vor tolera actualizările de software și problemele temporare ale produselor oferite de aceste companii.

Majoritatea companiilor de software nu au acest lux. Clienții doresc ca produsele să funcționeze așa cum au fost anunțate și sunt alarmați pe bună dreptate dacă există vulnerabilități neabordate.

De ce sunt necesare abilitățile de testare?

Având la dispoziție atât de multe opțiuni de dezvoltare software, clienții nu se gândesc de două ori să se ridice la bord dacă produsul miroase a timp și bani pierdut. Companiile de software trebuie să efectueze teste riguroase asupra produselor lor înainte de a le lansa clienților. Aceste teste oferă următoarele perspective:

  • Ele evidențiază diferențele dintre conceptul original și rezultatul final.
  • Ei verifică dacă software-ul funcționează așa cum au planificat designerii.
  • Ei evaluează caracteristicile și calitatea.
  • Ei validează că produsul final îndeplinește cerințele clienților.

Testarea urmează un plan strict pentru a optimiza volumul de lucru, timpul și banii, oferind în același timp părților interesate informații esențiale pentru a avansa produsul. Scopul este de a facilita o experiență pozitivă pentru utilizatorul final, păstrând o experiență amănunțită asigurarea calității program (QA). Având în vedere mizele mari pentru dezvoltatori, managerii QA sunt unii dintre cei mai buni venituri în industria tehnologiei. De obicei, testarea urmează acești pași:

  1. Efectuați o analiză a cerințelor, în care managerii conturează un plan pentru a pune în aplicare o strategie de testare adecvată.
  2. Începeți testele și analizați rezultatele.
  3. Corectați eventualele defecțiuni și supuneți software-ul la teste de regresie (un sistem pentru a verifica dacă programul încă funcționează după modificări).
  4. Creați un raport de închidere a testului care detaliază procesul și rezultatele.

Persoanele fizice pot deveni testeri de software certificați prin BCS, Chartered Institute for IT, ISTQB (International Software Testing Qualifications Board) și ASQ (Societatea Americană pentru Calitate).

Metode de testare software

Testarea cutiilor alb-negru sunt două metode fundamentale pentru a evalua comportamentul și performanța produsului. Testarea cutie neagră, numită și testare funcțională sau bazată pe specificații, se concentrează pe rezultate. Testerii nu sunt preocupați de mecanismele interne. Ei verifică doar dacă software-ul face ceea ce ar trebui să facă. Cunoștințele de codificare nu sunt necesare, iar testerii lucrează la nivel de interfață cu utilizatorul.

Testarea cutiei albe folosește experiența de codare ca parte a procedurii de testare. Când un produs eșuează, testerii merg adânc în cod pentru a găsi cauza. Dezvoltatorii de software vor face acest lucru singuri, deoarece clienții se așteaptă ca ei să facă un produs să funcționeze. Testarea cutiei albe este denumită și testare „pe bază de structură” sau „cutie de sticlă”.

Testarea statică examinează codul sursă și orice documentație însoțitoare, dar nu execută programul. Testele statice încep devreme în dezvoltarea produsului în timpul procesului de verificare.

Testarea dinamică utilizează diverse intrări atunci când software-ul rulează, iar testerii compară ieșirile cu comportamentul așteptat. Testarea interfeței grafice cu utilizatorul evaluează formatarea textului, casetele de text, butoanele, listele, aspectul, culorile și alte elemente ale interfeței. Testarea GUI necesită timp, iar companiile terțe își asumă adesea sarcina în locul dezvoltatorilor.

Niveluri de testare

Sunt utilizate diferite niveluri de testare pentru a identifica zonele slabe și suprapunerea în fiecare fază a ciclul de viață al dezvoltării software. Nivelurile de testare sunt:

  • Test unitar
  • Testarea integrării
  • Testarea sistemului
  • Testarea de acceptare

La testarea unitară, dezvoltatorii testează cele mai elementare părți ale codului, cum ar fi clasele, interfețele și funcțiile/procedurile. Ei știu cum ar trebui să răspundă codul lor și pot face ajustări în funcție de rezultat.

Testarea de integrare este cunoscută și sub denumirea de testare „modulă” sau „program”. Este similar cu testarea unitară, dar conține un nivel mai ridicat de integrare. Modulele software-ului sunt testate pentru defecte pentru a verifica funcționarea lor. Testarea integrării identifică erorile atunci când modulele se integrează. Diferite metode pentru testele de integrare includ „de jos în sus”, „de sus în jos” și „funcțională incrementală”.

Testarea sistemului testează componentele unui proiect în ansamblu în diferite medii. Testarea sistemului se încadrează în metoda cutiei negre și este unul dintre testele finale ale procesului. Acesta va determina dacă sistemul este pregătit pentru a satisface nevoile de afaceri și ale utilizatorilor.

În general, există două tipuri de testare de acceptare. În testarea alfa, software-ul este executat intern pe site-ul dezvoltatorului într-un mediu simulat sau real. Software-ul rulează ca și cum utilizatorii finali l-ar folosi. Dezvoltatorii notează orice probleme și încep să remedieze erorile și alte probleme.

De asemenea, în cadrul testării cutie neagră, în testarea de acceptare, clienții testează software-ul pentru a afla dacă dezvoltatorul a dezvoltat complet programul pentru a se potrivi specificațiilor dorite.

Testarea beta, sau testarea pe teren, permite clienților să testeze produsul pe site-urile lor în condiții reale. Clienții pot oferi unui grup de utilizatori finali oportunitatea de a testa software-ul prin versiuni pre-lansare sau beta. Testarea beta are ca scop obținerea de feedback real al utilizatorilor, care este trimis dezvoltatorului.

Tipuri de testare

Diferite tipuri de teste software sunt concepute pentru a se concentra pe obiective specifice. Inginerul de testare și managerul de configurație folosesc testarea instalării pentru a se asigura că utilizatorul final poate instala și rula programul. Acesta acoperă domenii precum fișierele de instalare, locațiile de instalare și privilegiile administrative.

Testarea de dezvoltare implementează o serie de strategii sincronizate pentru a detecta și a preveni defectele. Include analiza statică a codului, revizuirea codului de la egal la egal, trasabilitatea și analiza valorilor. Scopul este reducerea riscurilor și economisirea costurilor.

Experiența utilizatorului este sub lumina reflectoarelor cu testele de utilizare. Măsoară cât de ușor este GUI de utilizat. Verifică acuratețea și eficiența funcțiilor și răspunsurile emoționale ale subiecților de testare.

Un test de bunăstare indică dacă software-ul merită timpul și costul pentru a continua testele ulterioare. Dacă există prea multe defecte, teste mai agresive nu vor urma.

Testarea sanității se face în timpul fazei de lansare a software-ului, unde se face testarea de fum pentru a vedea dacă software-ul va rula suficient pentru a putea fi testat.

Testarea fumului dezvăluie defecțiuni fundamentale care sunt suficient de grave pentru a preveni eliberarea. Când dezvoltatorii testează o nouă versiune, se numește test de „verificare a construcției”. Când sistemul suferă modificări, testarea de regresie monitorizează comportamentul neașteptat. Subliniază efectele adverse asupra modulelor sau componentelor.

Testerii introduc intrări anormale și discern capacitatea software-ului de a gestiona intrările neașteptate în testele distructive. Acest lucru arată dezvoltatorilor cât de robust este programul la gestionarea erorilor.

Când hardware-ul sau alte funcții eșuează, testarea de recuperare arată cât de bine poate software-ul să se recupereze și să continue să funcționeze.

Automatizarea realizează funcții care sunt dificil de implementat manual. Testarea implică utilizarea unui software specific pentru a rula teste și pentru a furniza date despre real vs. rezultate așteptate.

Software-ul trebuie să ruleze în diferite medii de calcul, astfel încât testarea de compatibilitate verifică modul în care software-ul răspunde la diferite sisteme. De exemplu, programatorii testează software-ul cu diverse sisteme de operare și browsere web.

Testele trebuie să fie extinse și să abordeze toate preocupările clienților, altfel proiectul devine rapid o risipă de resurse.

Testarea performanței examinează performanța software-ului în diferite scenarii. Sunt colectate informații despre capacitatea de răspuns, stabilitate, alocarea resurselor și viteză. Subtestele, cum ar fi testarea volumului, a capacității și a vârfurilor, joacă un rol în acest proces.

Testarea de securitate măsoară capacitatea software-ului de a proteja securitatea utilizatorilor. Funcțiile de autorizare, autentificarea, confidențialitatea, integritatea, disponibilitatea și non-repudierea sunt toate exemple de caracteristici care trebuie testate.

Testarea de accesibilitate este diferită de testarea de utilizare. Aceasta determină măsura în care utilizatorii cu diferite abilități pot folosi software-ul.

Rezultatele testelor de internalizare și localizare arată cum software-ul se poate adapta la diferite limbi și cerințe regionale. Aceasta include adăugarea de componente pentru anumite locații și traducerea textului.

Cum să stabiliți cote de vânzări pentru echipa dvs

O cotă sau un obiectiv de vânzări este un număr stabilit de vânzări sau o valoare totală a vânzărilor pe care se așteaptă să o îndeplinească un agent de vânzări într-o anumită perioadă de timp. Aproape toate companiile stabilesc cote pentru oamen...

Citeste mai mult

De ce Conferințele încep cu o sesiune plenară

Multe întâlniri și conferințe corporative mari dau startul programului evenimentului cu ceea ce este o sesiune de deschidere, numită uneori o sesiune plenară sau o sesiune generală de deschidere. Aceste sesiuni sunt cel mai frecvent asociate cu c...

Citeste mai mult

Credite fiscale pentru cercetare și dezvoltare pentru întreprinderi

Legile recente au oferit inventatorilor și facilităților de cercetare în afaceri unele stimulente pentru a face cercetare și dezvoltare (R&D) sub forma unui credit fiscal. Legea PATH din 2015 a inclus unele stimulente sporite sub forma unui c...

Citeste mai mult