getting started with cloud testing
În acest articol, vom învăța cum să efectuăm „Cloud Testing”. Pentru a înțelege acest lucru, trebuie să cunoaștem mai întâi conceptul Cloud Computing. Acest articol explică despre Cloud Computing, Cloud Testing și provocările majore legate de testarea în cloud.
Introducere în cloud computing
Cu câțiva ani în urmă, industria a asistat la un nou cuvânt la modă și la o nouă tehnologie numită „virtualizare”. Odată cu apariția virtualizării, ideologia partajării resurselor de calcul între mai multe sisteme de operare pentru a crește scalabilitatea, a reduce costurile de capital și a permite administrarea ușoară a infrastructurii IT, a devenit coloana vertebrală a mai multor întreprinderi.
În ultimii ani, IT-ul a asistat la o evoluție a virtualizării sub formă de cloud computing. Orice începător în cloud trebuie să imagineze cloud computingul ca un model care vede totul „Ca serviciu”.
Este evident să se definească cloud computingul ca o soluție totală care oferă IT ca serviciu. La fel ca virtualizarea, deviza sa este partajarea resurselor, prin care alocarea și disponibilitatea sunt la cerere prin Internet.
(imagine sursă )
Exemplu din viața reală pentru a explica Cloud Computing:
Putem înțelege cu ușurință teoria Cloud Computing luând un exemplu simplu de a lua masa la un restaurant. De exemplu, ia în considerare o masă acasă față de aceea de a lua la un restaurant. În timp ce obiectivul este pur consumul unei mese, abordarea sau modelul utilizat în ambele cazuri variază în mare măsură.
Acasă, trebuie să vă asigurați dacă aveți toate ingredientele necesare pentru masă, trebuie să vă asigurați că pregătirea necesară pentru a găti felul de mâncare este făcută. Gătiți mâncarea și responsabilitatea de a păstra împrejurimile ordonate după ce felul de mâncare este gătit vă aparține numai.
Acum, pe de altă parte, a lua masa la un restaurant poate fi descris ca catering, care este un serviciu. În calitate de client, mergi doar la restaurant, comanzi felul de mâncare la alegere și plătești pentru servicii.
Bonusul de a deține ingredientele, de pregătirea vasului, de a găti vasul, de prezentarea acestuia, de a vă servi vasul, de a curăța și de a curăța masa după ce ați terminat, de a împacheta orice resturi de mâncare excesivă revin administrației restaurantului.
Acest exemplu poate fi privit ca similar cu ideologiile și principiile Cloud Computing - „Disponibilitate la cerere”, „Ca serviciu” și „Plătește pentru utilizare”.
Ce veți învăța:
- Modele de livrare în cloud
Modele de livrare în cloud
(imagine sursă )
Cloud-ul are în principal trei tipuri de modele de livrare sau componente care oferă capacități „ca serviciu”:
- Infrastructura ca serviciu (IaaS) : Acesta este cel mai fundamental strat care formează elementul de bază al norului. Acesta cuprinde în principal resurse fizice, cum ar fi stocare, dispozitive de rețea, servere de calcul, etc. Toate aceste resurse de calcul sunt disponibile la cerere, unde un utilizator plătește pentru aceasta în funcție de utilizarea sa.
- Platform as a Service (PaaS) : Stratul central din cloud este platforma. Aici nu există control asupra infrastructurii de bază, dar puteți accesa aplicațiile implementate. Prin urmare, acesta oferă întregul mediu de rulare la cerere, care ar putea fi o dezvoltare sau un mediu de testare. Prin urmare, în acest model, cel mai frecvent veți avea la dispoziție o mașină virtuală care conține un mediu complet cum ar fi sistemul de operare, middleware necesar etc. atunci când aveți nevoie de el.
- Software ca serviciu (SaaS) : Cel mai de sus strat este stratul de aplicație, care va fi vizibil în general pentru orice utilizator. Aici, aplicațiile / produsele sunt disponibile utilizatorilor la cerere prin internet. Prin urmare, în loc să trebuiască să obțină licența pentru un anumit utilizator, acest lucru se dovedește a fi cel mai rentabil mod de a vă asigura că licența este întotdeauna utilizată. Exemple în acest sens sunt Gmail, Google Docs, Photoshop etc.
Tipuri de nori
Există 3 tipuri de formațiuni de nori și anume nori publici, privați și hibrizi:
- Nori publici sunt cele în care serviciile sunt disponibile pentru toată lumea, unde resursele sunt alocate și furnizate dinamic în conformitate cu cererea.
- Nori privați sunt în general gestionate în conformitate cu regulile firewall-ului unei anumite organizații și sunt disponibile numai utilizatorilor din cadrul companiei.
- Nori hibrizi sunt un amestec de nori publici și privați. Organizațiile pot decide ce servicii doresc să expună tuturor și ce servicii doresc să expună numai utilizatorilor din cadrul organizației.
Testare în cloud - nevoie de ea
Testarea în cloud se referă la testarea resurselor, cum ar fi hardware, software etc., care sunt disponibile la cerere . Chiar și testarea de aici poate fi privită „ca un serviciu”. Pentru ofertele cloud, este esențial să vă asigurați că serviciul (produsul) nu numai că îndeplinește cerințele sale funcționale, ci și cerințele nefuncționale. Cu o gamă largă de aplicații în cloud, devine acum esențială dezvoltarea strategiei de testare în cloud.
Avantajele testării în cloud
Necesitatea testării în cloud este ușor vizibilă cu beneficiile pe care le obținem din aceasta, care sunt mult prea multe. Mai jos am încercat să discutăm cele mai evidente beneficii care explică de ce Nor este nevoia orei:
editor de script shell gratuit pentru Windows
- Disponibilitate dinamică a mediul de testare : Abordarea normală de testare în orice organizație este de a investi în infrastructura hardware / software necesară pentru testare. Aproape, mulți dintre voi vor fi de acord că mediul furnizat echipelor de testare se potrivește foarte rar cu mediul clientului din cauza cerințelor care se schimbă rapid, drept urmare este foarte dificil pentru companii să îl mențină. Cloud este singurul răspuns la această problemă, prin care utilizatorii pot reproduce cu ușurință un mediu client și pot găsi defecte la începutul ciclului.
- Cost scăzut : Un alt unghi față de punctul anterior este că atunci când companiile investesc în infrastructură, cauza obișnuită a acesteia este că multe dintre serverele lor nu sunt utilizate tot timpul. Drept urmare, este posibil să fie nevoit să suporte cheltuieli suplimentare la reînnoirea licenței. Tranziția către cloud ajută și în acest scenariu, deoarece utilizatorii pot pune în funcțiune dispozitive după cum și când doresc, economisind astfel costuri uriașe pentru o organizație.
- Ușor de personalizat : Cu ajutorul cloud-ului, este o sarcină ușoară pentru organizații să imite un mediu centrat pe utilizatorul final, personalizându-l în funcție de utilizare, economisind astfel timp și costuri. Echipele de testare pot efectua cu ușurință scenarii de testare a sarcinii și performanței în diferite permutări și combinații cum ar fi - diferite sisteme de operare, browsere, configurații etc.
- Scalabilitate : Aceasta este una dintre cele mai atractive caracteristici ale cloud-ului prin care resursele de calcul pot fi mărite sau diminuate oriunde este necesar. Acest lucru este utilizat pe scară largă în situațiile în care cerințele companiei se modifică frecvent.
Testarea în cloud Deep Dive
Testarea cu privire la un cloud va utiliza atât metode tradiționale, cât și metode new age pentru a efectua testarea. Testarea și cloud-ul sunt domenii la fel de mari în propria lor cale. Să învățăm cum să le vedem pe amândouă în secțiunile de mai jos.
# 1) Formulare de testare în cloud
Testarea în cloud poate fi în general împărțită în patru categorii diferite, în funcție de ceea ce își propune să facă:
- Testarea întregului nor: Norul este privit ca o entitate întreagă pe baza caracteristicilor sale, iar testarea se efectuează pe baza acestuia.
- Testarea într-un nor: Aceasta este testarea care se efectuează în interiorul norului verificând fiecare dintre caracteristicile sale interne
- Testarea peste nori: Pe baza specificațiilor, aici testarea se efectuează pe diferitele tipuri de nori, cum ar fi nori publici, privați și hibrizi.
- Testarea SaaS în cloud: Testarea funcțională și nefuncțională se efectuează pe baza cerințelor.
# 2) Medii de testare în cloud
Există 3 tipuri de medii de testare în cloud:
- Un mediu privat sau public în care calitatea aplicațiilor implementate în acestea trebuie validată.
- Un mediu hibrid, în care calitatea aplicațiilor implementate în acestea trebuie validată.
- Un mediu de testare bazat pe cloud, în care calitatea aplicațiilor implementate în cloud trebuie validată.
# 3) Tipuri de teste efectuate în cloud
Testarea într-un cloud trebuie nu numai să se asigure că sunt îndeplinite cerințele funcționale, dar trebuie pus un accent puternic și pe testarea nefuncțională. Să aruncăm o privire asupra diferitelor tipuri de teste care sunt efectuate.
Testarea funcțională :
Testarea funcțională trebuie efectuată pentru a vă asigura că oferta oferă serviciile pentru care utilizatorul plătește. Testele funcționale asigură îndeplinirea cerințelor afacerii.
Unele dintre testele funcționale sunt descrise mai jos:
- Testarea verificării sistemului : Aceasta asigură dacă diversele module funcționează corect între ele, asigurându-se astfel că comportamentul lor este așa cum era de așteptat.
- Testarea de acceptare : Aici soluția bazată pe cloud este predată utilizatorilor pentru a se asigura că îndeplinește așteptările lor.
- Testarea interoperabilității : Orice aplicație trebuie să aibă flexibilitatea de a funcționa fără probleme, nu numai pe diferite platforme, ci trebuie să funcționeze perfect și atunci când se mută de la infrastructura cloud la alta.
Testare nefuncțională:
Testele nefuncționale se concentrează în principal pe testele bazate pe aplicații web, asigurându-se că îndeplinesc cerințele dorite.
întrebări și răspunsuri la interviu pentru vânzări cu experiență pentru dezvoltatori
Iată câteva forme de teste nefuncționale discutate mai jos:
# 1) Testarea disponibilității : Supervizorul / furnizorul de cloud trebuie să se asigure că norul este disponibil non-stop. Deoarece ar putea exista multe activități critice pentru misiune, administratorul trebuie să se asigure că nu există niciun impact negativ asupra consumatorilor
# 2) Testare multi-chiriașă : Aici, mai mulți utilizatori folosesc o ofertă cloud. Testarea trebuie efectuată pentru a se asigura că există suficientă securitate și control al accesului datelor atunci când mai mulți utilizatori utilizează o singură instanță.
# 3) Testarea performanței : Verificarea timpului de răspuns trebuie făcută pentru a se asigura că totul este intact, chiar și atunci când există o mulțime de cereri care trebuie satisfăcute. Latența rețelei este, de asemenea, unul dintre factorii critici pentru evaluarea performanței.
De asemenea, echilibrarea volumului de muncă trebuie făcută atunci când există o reducere a sarcinii, prin dezafectarea resurselor. Astfel, testarea încărcării și a stresului se face în cloud oferind pentru a vă asigura că aplicațiile funcționează optim cu o creștere / scădere a sarcinii și a stresului.
# 4) Testarea securității : Deoarece totul este disponibil oricând cu Cloud, este esențial să vă asigurați că toate informațiile sensibile ale utilizatorilor nu au acces neautorizat și confidențialitatea utilizatorilor rămâne intactă. La menținerea aplicațiilor în cloud, trebuie verificată și integritatea datelor utilizatorilor.
# 5) Testarea recuperării în caz de dezastru : După cum sa menționat deja în testarea disponibilității, cloud-ul trebuie să fie disponibil în orice moment și dacă există orice fel de defecțiuni precum întreruperile rețelei, defecțiuni datorate încărcării extreme, defecțiuni ale sistemului etc., măsurați cât de repede este indicată defecțiunea și dacă există pierderea datelor are loc în această perioadă.
# 6) Testarea scalabilității : Testați pentru a vă asigura că oferta are capacitatea de a oferi facilități de mărire sau reducere, în funcție de necesități.
Instrumente de testare în cloud
Unele dintre instrumentele utilizate în diferite tipuri de testări efectuate într-un mediu cloud sunt menționate în această secțiune. Detaliile instrumentelor nu intră în sfera acestui articol.
Instrumente pentru testarea performanței în cloud:
Multe dintre instrumente sunt utilizate în esență pentru testarea performanței, sarcinii și a stresului. Unele dintre aceste instrumente de mai jos pot fi utilizate și pentru teste funcționale:
- SOASTA CloudTest
- LoadStorm
- CloudTestGo
- AppPerfect.
- Jmeter
- Cloudslueth
- CloudTestGo
- AppPerfect
Instrumente de testare a securității în cloud:
Există, de asemenea, unele instrumente legate de securitate care sunt utilizate în mod obișnuit:
- Nessus
- Wireshark
- Nmap
Provocări de testare în cloud
Oricât de interesant sună norul, nu totul este hunky-dory aici. Există unele provocări legate de bazarea și utilizarea cloud-ului ca și infrastructură. Să aruncăm o privire la unele dintre principalele preocupări în timp ce utilizați cloud.
Provocarea nr. 1) Cu tot ce este disponibil la cerere pentru orice utilizator, securitatea este o problemă primară pentru companii, deoarece în prezent există încă o mulțime de discuții și cercetări în desfășurare în industrie pentru a stabili standarde de securitate. Protecția confidențialității utilizatorilor, standardele de securitate în cloud, securitatea aplicațiilor care rulează în cloud, Tehnici de testare a securității sunt câteva dintre problemele principale care trebuie abordate în infrastructura cloud.
Provocarea nr. 2) O altă mare provocare este performanța unei aplicații într-un cloud, în special în cloud-uri private. Acesta va fi distribuit mai multor utilizatori și, prin urmare, ar putea duce și la întârzieri. De asemenea, în cazul unor activități legate de întreținere sau întreruperi, lățimea de bandă poate părea insuficientă.
Provocarea nr. 3) Uneori, în scopuri de testare, avem nevoie de anumite configurații cu privire la servere, stocare sau rețea, care pot să nu fie acceptate de furnizorul de cloud. Uneori, acest lucru face dificilă emularea mediilor clienților.
Provocarea # 4 )O altă provocare frecvent întâlnită este în ceea ce privește testarea integrării prin care testerii testează rețeaua, baza de date, servere etc. În astfel de situații, testerul nu va avea control asupra mediului subiacent. În al doilea rând, provocarea este dublată atunci când trebuie să existe o interacțiune între aceste componente, deoarece testerul va trebui să anticipeze riscuri precum blocări, defecțiuni ale rețelei sau servere care merg caput.
Concluzie
Astăzi, Cloud Computing a devenit unul dintre acele „big bangs” din industrie. Majoritatea organizațiilor se înclină acum spre adoptarea cloud-ului din cauza acestuia flexibilitate, scalabilitate și costuri reduse .
Folosirea cloud-ului pentru testare ajută enorm organizațiile să achiziționeze instrumentele necesare, licențele software, infrastructurile la un cost foarte mic, fără a fi nevoie să le configureze singure și să se îngrijoreze ulterior de utilizarea sa maximă.
Evident, un nor este aici pentru a sta mult timp, iar testarea norilor are și un viitor strălucit. :)
Despre autor : Acesta este un articol invitat de Sneha Nadig. Lucrează ca șef de testare cu peste 7 ani de experiență în proiecte de testare manuală și de automatizare.
Lucrați la Cloud Testing? Vă rugăm să împărtășiți experiența dvs. Sau ai o întrebare? nu ezitați să o postați în comentarii.
Lectură recomandată
- Noțiuni introductive despre testarea în cloud
- Testarea performanței în cloud: Furnizori de servicii de testare a încărcării bazate pe cloud
- Testarea aplicațiilor mobile bazate pe cloud: o prezentare generală completă
- Cei mai buni furnizori de servicii de testare a aplicațiilor mobile bazate pe cloud în 2021
- Cele mai bune 10 instrumente de monitorizare a cloud-ului pentru o gestionare perfectă a cloud-ului
- 10 BEST Furnizori de stocare gratuită în cloud (stocare online 2021)
- 12 CEL MAI BUN Furnizor de găzduire în cloud în 2021 (comparat pentru servicii și costuri)