Tutorial de testare automată: Ce este testarea automată?

Cuprins:

Anonim

Ce este testarea automatizării?

Automation Testing sau Test Automation este o tehnică de testare software care efectuează folosind instrumente software speciale de testare automată pentru a executa o suită de cazuri de testare. Dimpotrivă, Testarea manuală este efectuată de un om așezat în fața unui computer executând cu atenție pașii de testare.

Software-ul de testare a automatizării poate introduce, de asemenea, date de testare în sistemul sub test, poate compara rezultatele așteptate și reale și poate genera rapoarte de testare detaliate. Software Test Automation necesită investiții considerabile de bani și resurse.

Ciclurile succesive de dezvoltare vor necesita executarea în mod repetat a aceluiași set de teste. Folosind un instrument de automatizare a testelor, este posibil să înregistrați această suită de testare și să o redați după cum este necesar. Odată ce suita de testare este automatizată, nu este necesară nicio intervenție umană. Acest ROI îmbunătățit al automatizării testelor. Scopul automatizării este de a reduce numărul de cazuri de testare care trebuie rulate manual și nu de a elimina complet testarea manuală.

Faceți clic aici dacă videoclipul nu este accesibil

În acest tutorial de testare automată a software-ului, veți învăța elementele de bază pentru automatizarea testelor, cum ar fi-

  • Ce este testarea automatizării?
  • De ce testarea automată?
  • Ce cazuri de testare trebuie automatizate?
  • Proces de testare automată
  • Selectarea instrumentului de testare
  • Definiți domeniul de aplicare al automatizării
  • Planificare, proiectare și dezvoltare
  • Executarea testului
  • Cadrul de automatizare
  • Cele mai bune practici ale instrumentului de automatizare
  • Avantajele testării automatizării
  • Tipuri de testare automată
  • Cum se alege un instrument de automatizare?
  • Instrumente de testare a automatizării

De ce să testăm automatizarea?

De ce să testăm automatizarea?

Test Automation este cel mai bun mod de a spori eficacitatea, acoperirea testelor și viteza de execuție în testarea software-ului. Testarea automată a software-ului este importantă din următoarele motive:

  • Testarea manuală a tuturor fluxurilor de lucru, a tuturor câmpurilor, a tuturor scenariilor negative consumă timp și bani
  • Este dificil să testați manual site-urile multilingve
  • Testarea automatizării în testarea software-ului nu necesită intervenția umană. Puteți rula test automat automat nesupravegheat (peste noapte)
  • Test Automation crește viteza de execuție a testului
  • Automatizarea ajută la creșterea acoperirii testelor
  • Testarea manuală poate deveni plictisitoare și, prin urmare, predispusă la erori.

Ce cazuri de testare trebuie automatizate?

Testele care vor fi automatizate pot fi selectate folosind următorul criteriu pentru a crește rentabilitatea investiției automatizate

  • Risc ridicat - Cazuri de testare critice pentru afaceri
  • Testați cazurile care sunt executate în mod repetat
  • Testează cazuri care sunt foarte obositoare sau dificil de realizat manual
  • Testează cazuri care necesită mult timp

Următoarea categorie de cazuri de testare nu este adecvată pentru automatizare:

  • Testează cazuri care sunt proiectate nou și nu sunt executate manual cel puțin o dată
  • Cazuri de testare pentru care cerințele se schimbă frecvent
  • Testează cazurile care se execută ad-hoc.

Proces automat de testare:

Următorii pași sunt urmați într-un proces de automatizare

Pasul 1) Selectarea instrumentului de testare

Pasul 2) Definiți domeniul de aplicare al automatizării

Pasul 3) Planificare, proiectare și dezvoltare

Pasul 4) Executarea testului

Pasul 5) Întreținere

Proces de automatizare a testelor

Selectarea instrumentului de testare

Selecția instrumentului de testare depinde în mare măsură de tehnologia pe care este construită aplicația sub test. De exemplu, QTP nu acceptă Informatica. Deci QTP nu poate fi utilizat pentru testarea aplicațiilor Informatica. Este o idee bună să efectuați o dovadă a conceptului de instrument pe AUT.

Definiți domeniul de aplicare al automatizării

Domeniul de aplicare al automatizării este zona aplicației dvs. sub test care va fi automatizată. Următoarele puncte ajută la determinarea domeniului de aplicare:

  • Caracteristicile importante pentru afacere
  • Scenarii care au o cantitate mare de date
  • Funcționalități comune între aplicații
  • Fezabilitate tehnică
  • Măsura în care componentele de afaceri sunt reutilizate
  • Complexitatea cazurilor de testare
  • Abilitatea de a utiliza aceleași cazuri de testare pentru testarea cross-browser

Planificare, proiectare și dezvoltare

În această fază, creați o strategie și un plan de automatizare, care conține următoarele detalii-

  • Instrumente de automatizare selectate
  • Proiectarea cadrului și caracteristicile sale
  • Elemente de automatizare în domeniul de aplicare și în afara domeniului de aplicare
  • Pregătirea automatizată a patului de testare
  • Programul și cronologia scriptării și executării
  • Livrabile testării automatizării

Executarea testului

Scripturile de automatizare sunt executate în această fază. Scripturile au nevoie de date de test de intrare înainte ca acestea să fie setate să ruleze. Odată executate, acestea furnizează rapoarte detaliate de testare.

Executarea poate fi efectuată folosind instrumentul de automatizare direct sau prin instrumentul de gestionare a testelor care va invoca instrumentul de automatizare.

Exemplu: Centrul de calitate este instrumentul de gestionare a testelor, care la rândul său va invoca QTP pentru executarea scripturilor de automatizare. Scripturile pot fi executate într-o singură mașină sau într-un grup de mașini. Execuția se poate face în timpul nopții, pentru a economisi timp.

Abordarea de întreținere a automatizării testelor

Abordarea de întreținere a automatizării testelor este o fază de testare a automatizării efectuată pentru a testa dacă noile funcționalități adăugate la software funcționează bine sau nu. Întreținerea în testarea automatizării se execută atunci când se adaugă noi scripturi de automatizare și trebuie revizuite și întreținute pentru a îmbunătăți eficiența scripturilor de automatizare cu fiecare ciclu de lansare succesiv.

Cadrul de automatizare

Un cadru este un set de linii directoare de automatizare care vă ajută

  • Menținerea consistenței testării
  • Îmbunătățește structurarea testului
  • Utilizarea minimă a codului
  • Mai puțină întreținere a codului
  • Îmbunătățiți reutilizarea
  • Testerii non-tehnici pot fi implicați în cod
  • Perioada de instruire a utilizării instrumentului poate fi redusă
  • Implică date ori de câte ori este cazul

Există patru tipuri de cadre utilizate în testarea software-ului de automatizare:

  1. Cadru de automatizare bazat pe date
  2. Cadru de automatizare bazat pe cuvinte cheie
  3. Cadrul de automatizare modular
  4. Hybrid Automation Framework

Cele mai bune practici ale instrumentului de automatizare

Pentru a obține un ROI maxim al automatizării, respectați următoarele

  • Domeniul de aplicare al automatizării trebuie să fie determinat în detaliu înainte de începerea proiectului. Acest lucru stabilește așteptările de la Automation.
  • Selectați instrumentul de automatizare potrivit: un instrument nu trebuie selectat pe baza popularității sale, dar este potrivit cerințelor de automatizare.
  • Alegeți un cadru adecvat
  • Standarde de scriptare - Standardele trebuie respectate în timpul scrierii scripturilor pentru automatizare. Unii dintre ei sunt-
    • Creați scripturi uniforme, comentarii și indentare a codului
    • Gestionarea adecvată a excepțiilor - Modul în care este tratată eroarea în caz de eșec al sistemului sau comportamentul neașteptat al aplicației.
    • Mesajele definite de utilizator ar trebui să fie codificate sau standardizate pentru ca jurnalul de erori să fie înțeles de testeri.
  • Măsurarea valorilor - Succesul automatizării nu poate fi determinat prin compararea efortului manual cu efortul de automatizare, ci și prin captarea următoarelor valori.
    • Procentul de defecte găsite
    • Timpul necesar pentru testarea automatizării pentru fiecare ciclu de lansare
    • Timpul minim este luat pentru eliberare
    • Indicele de satisfacție a clienților
    • Îmbunătățirea productivității

Dacă sunt respectate liniile directoare de mai sus, vă pot ajuta în mare măsură succesul automatizării.

Avantajele testării automatizării

Avantajele testării automatizării

Următoarele sunt avantajele Test Automation:

  • Cu 70% mai rapid decât testarea manuală
  • Acoperire mai largă a funcțiilor aplicației
  • Fiabile în rezultate
  • Asigurați-vă coerența
  • Economisește timp și costuri
  • Îmbunătățește precizia
  • Intervenția umană nu este necesară în timpul executării
  • Crește eficiența
  • Viteză mai bună în executarea testelor
  • Scripturi de test reutilizabile
  • Testați frecvent și temeinic
  • Mai multe cicluri de execuție pot fi realizate prin automatizare
  • Timp devreme pe piață

Tipuri de testare automată

  • Testarea fumului
  • Testarea unitara
  • Testarea integrării
  • Testarea funcțională
  • Testarea cuvintelor cheie
  • Testarea regresiei
  • Testare bazată pe date
  • Testarea cutiei negre

Cum se alege un instrument de automatizare?

Selectarea instrumentului potrivit poate fi o sarcină dificilă. Următorul criteriu vă va ajuta să selectați cel mai bun instrument pentru cerințele dvs.

  • Suport pentru mediu
  • Ușurință în utilizare
  • Testarea bazei de date
  • Identificarea obiectului
  • Testarea imaginii
  • Testarea recuperării erorilor
  • Cartografierea obiectelor
  • Limbajul de scriptare utilizat
  • Suport pentru diferite tipuri de teste - inclusiv funcționale, gestionarea testelor, dispozitive mobile etc.
  • Suport pentru mai multe cadre de testare
  • Ușor de depanat scripturile software-ului de automatizare
  • Abilitatea de a recunoaște obiecte din orice mediu
  • Rapoarte și rezultate de testare extinse
  • Minimizați costurile de instruire ale instrumentelor selectate

Selectarea instrumentelor este una dintre cele mai mari provocări care trebuie abordate înainte de a merge la automatizare. În primul rând, identificați cerințele, explorați diverse instrumente și capabilitățile sale, setați așteptările de la instrument și alegeți o dovadă a conceptului.

Instrumente de testare a automatizării

Pe piață sunt disponibile multe instrumente de testare funcțională și de regresie. Iată cele mai bune instrumente de automatizare a testelor certificate de experții noștri

  1. Studio Ranorex

Ranorex Studio este un instrument all-in-one pentru automatizarea testelor UI funcționale, testelor de regresie, testelor bazate pe date și multe altele. Ranorex Studio include o interfață click-and-go ușor de utilizat pentru automatizarea testelor pentru aplicații web, desktop și mobile.

Caracteristici:

  • UI funcțională și testare end-to-end pe desktop, web și mobil
  • Testare cross-browser
  • SAP, ERP, Delphi și aplicații vechi.
  • iOS și Android
  • Rulați teste local sau de la distanță, în paralel sau distribuiți pe o rețea Selenium
  • Raportare robustă

Aflați mai multe


  1. Testim

Testim este calea cea mai rapidă către testele rezistente cap la cap - fără cod, codate sau ambele. Testim vă permite să creați teste fără cod uimitor de stabile care să folosească AI-ul nostru, dar și flexibilitatea de a exporta teste ca cod. Clienți precum Microsoft, NetApp, Wix și JFrog efectuează în fiecare lună milioane de teste pe Testim

Caracteristici

  • Puteți utiliza API-ul JavaScript modern Testim și IDE-ul dvs. pentru a depana, personaliza sau refactura testele.
  • Stocați testul în sistemul dvs. de control al versiunilor pentru a le menține sincronizate cu ramurile și executați teste la fiecare commit.
  • Integrare cu instrumente populare

Aflați mai multe


  1. Seleniu

Este un instrument de testare software utilizat pentru testarea de regresie. Este un instrument de testare open source care oferă facilități de redare și înregistrare pentru testarea de regresie. Selenium IDE acceptă numai browserul web Mozilla Firefox.

  • Oferă posibilitatea de a exporta scripturi înregistrate în alte limbi, cum ar fi Java, Ruby, RSpec, Python, C #, etc.
  • Poate fi folosit cu cadre precum JUnit și TestNG
  • Poate executa mai multe teste la un moment dat
  • Completare automată pentru comenzile Selenium care sunt comune
  • Teste generale
  • Identifică elementul folosind id, nume, cale X etc.
  • Stocați testele ca Ruby Script, HTML și orice alt format
  • Oferă o opțiune pentru afirmarea titlului pentru fiecare pagină
  • Acceptă fișierul selenium user-extensions.js
  • Permite inserarea comentariilor în mijlocul scriptului pentru o mai bună înțelegere și depanare

Descărcați Selenium


  1. QTP (MicroFocus UFT)

QTP este utilizat pe scară largă pentru testarea funcțională și de regresie, se adresează fiecărei aplicații software majore și mediului înconjurător. Pentru a simplifica crearea și întreținerea testelor, folosește conceptul de testare bazată pe cuvinte cheie. Permite testerului să creeze cazuri de testare direct din aplicație.

  • Este mai ușor de utilizat pentru o persoană non-tehnică să se adapteze și să creeze cazuri de testare de lucru
  • Remediază mai rapid defectele prin documentarea și reproducerea temeinică a defectelor pentru dezvoltator
  • Restrângeți crearea testului și documentația de testare pe un singur site
  • Parametrizarea este ușoară decât WinRunner
  • QTP acceptă mediul de dezvoltare .NET
  • Are un mecanism mai bun de identificare a obiectelor
  • Poate îmbunătăți scripturile QTP existente fără ca „Aplicația sub test” să fie disponibilă, utilizând ecranul activ

Descărcați QTP


  1. Tester funcțional rațional

Este un instrument de testare funcțională automat orientat pe obiecte, capabil să efectueze teste funcționale, de regresie, bazate pe date și teste GUI automatizate. Principalele caracteristici ale acestui instrument sunt

  • Suportă o gamă largă de protocoale și aplicații precum Java, HTML, NET, Windows, SAP, Visual Basic etc.
  • Poate înregistra și reda acțiunile la cerere
  • Se integrează bine cu instrumentele de gestionare a controlului sursei, cum ar fi Rational Clear Case și integrarea Rational Team Concert
  • Permite dezvoltatorilor să creeze scripturi asociate cuvintelor cheie, astfel încât să poată fi refolosite
  • Editorul Eclipse Java Developer Toolkit facilitează echipei să codeze scripturile de testare în Java cu Eclipse
  • Acceptă controale personalizate prin SDK proxy (Java / .Net)
  • Suportă controlul versiunilor pentru a permite dezvoltarea paralelă a scripturilor de testare și utilizarea simultană de către echipa distribuită geografic

Descărcați Rational Functional Tester


  1. Watir

Este un software open source pentru testarea regresiei. Vă permite să scrieți teste ușor de citit și de întreținut. Watir acceptă numai Internet Explorer pe Windows, în timp ce Watir Webdriver acceptă Chrome, Firefox, IE, Opera etc.

  • Suportă mai multe browsere pe diferite platforme
  • Mai degrabă decât să utilizeze un script proprietar de furnizor, acesta folosește un limbaj de scriptare modern complet complet Ruby
  • Acesta acceptă aplicația dvs. web, indiferent în ce este dezvoltată

Descărcați Watir


  1. SilkTest

Silk Test este conceput pentru testarea funcțională și de regresie. Pentru aplicațiile de e-business, testul de mătase este cel mai important produs de testare funcțională. Este un produs al preluării Segue Software de către Borland în 2006. Este un limbaj orientat obiect, la fel ca C ++. Folosește conceptul de obiect, clase și moștenire. Caracteristica sa principală include

  • Se compune din toate fișierele script sursă
  • Convertește comenzile scriptului în comenzi GUI. Pe aceeași mașină, comenzile pot fi executate pe o mașină la distanță sau gazdă
  • Pentru a identifica mișcarea mouse-ului împreună cu apăsările de tastă, Silktest poate fi executat. Poate folosi atât metoda de redare și înregistrare, cât și metode descriptive de programare pentru a obține dialogurile
  • Identifică toate comenzile și ferestrele aplicației testate ca obiecte și determină toate atributele și proprietățile fiecărei ferestre

Descărcați SilkTest

rezumat

Test Automation este o tehnică de testare software care se realizează folosind instrumente software speciale de testare automată pentru a executa o suită de cazuri de testare.

Test Automation este cel mai bun mod de a spori eficacitatea, acoperirea testelor și viteza de execuție în testarea software-ului.

Selecția instrumentului de testare depinde în mare măsură de tehnologia pe care este construită aplicația sub test.

Abordarea de întreținere a automatizării testelor este o fază de testare a automatizării efectuată pentru a testa dacă noile funcționalități adăugate la software funcționează bine sau nu.

Selecția corectă a instrumentului de automatizare, procesul de testare și echipa sunt jucători importanți pentru ca automatizarea să aibă succes. Metodele manuale și de automatizare merg mână în mână pentru testarea cu succes.