soa testing tutorial
Tutorial de testare SOA:
În acest articol, vom discuta despre tehnicile de testare pentru o arhitectură SOA.
Software-ul actual de zi este atât de versatil și predispus la gestionarea schimbărilor de așteptări ale utilizatorilor din când în când, un model independent nu este util.
Acolo se potrivește SOA drept soluție.
Acesta este motivul pentru care, multe companii se adaptează sau încearcă să adapteze abordarea SOA din cauza avantajelor sale, cum ar fi; Reducerea costurilor, agilitatea afacerii, întreținere ușoară etc. Odată cu viitoarea piață plină de arhitectură SOA, devine necesar ca testerii moderni să aibă o idee corectă cu privire la testarea SOA.
cel mai bun convertor video pentru Mac
În acest articol, vom acoperi elementele de bază ale SOA cu exemple ale acestuia.
Acest lucru ar oferi cititorilor o idee de bază despre SOA. Aceasta ar fi urmată de abordarea de implementare a serviciilor web. În cele din urmă, vom intra în procesul de testare care poate fi urmat pentru un model de arhitectură SOA.
Ce veți învăța:
- Ce este SOA?
- Exemple de SOA
- Servicii Web
- Proces de testare SOA
- Provocări în testarea SOA
- Instrumente de testare SOA
- Lectură recomandată
Ce este SOA?
SOA sau Sevice-Oriented-Architecture este o metodă flexibilă / agilă / eficientă de integrare a diferitelor aplicații / servicii pentru a atinge anumite nevoi de afaceri.
- Spre deosebire de alte sisteme complicate, SOA cuprinde componente mai mici / servicii / micro servicii legate împreună, astfel încât să satisfacă nevoile afacerii.
- Serviciile sunt unitățile care fac sistemul întreg și atunci când este nevoie de o schimbare, mai degrabă decât schimbarea întregului sistem, serviciul specific este modificat.
- Un serviciu este o componentă care este capabilă să îndeplinească o sarcină.
- Această arhitectură este mai vândabilă decât sistemul vechi, deoarece utilizatorul final primește doar serviciile necesare pentru a-și satisface nevoile. Nu trebuie să obțină întregul sistem.
- Serviciile / micro-serviciile sunt cuplate slab, reutilizabile, fără stat, ceea ce face sistemul și mai robust.
- Acest model este foarte eficient din punct de vedere al costurilor în ceea ce privește implementarea, dezvoltarea și întreținerea.
Exemple de SOA
Nevoie de afaceri: O aplicație la care un Utilizator se poate autentifica și căuta Restaurante bazate pe Geolocalizare, Descarcă detaliile restaurantului și Meniu de pe server odată ce căutarea este finalizată și, în final, se poate face o plată pentru plasarea comenzii.
Această nevoie de afaceri poate fi atinsă prin implementarea SOA.
Pot exista servicii / micro-servicii după cum urmează, pentru a îndeplini diverse sarcini:
- În timpul conectării, serviciul care ar fi utilizat este „Serviciu de autentificare”
- Căutarea restaurantelor se va face prin „serviciul de localizare geografică”
- Descărcarea meniului trebuie făcută de „Serviciul de descărcare a meniului”
- În cele din urmă, plata se va face prin „Serviciu de plată”
Fiecare dintre serviciile menționate mai sus face ceva unic, astfel încât sistemul să funcționeze și să livreze ceea ce ar trebui să facă. Acum, dacă un client trebuie să vadă doar restaurantul și meniul acestuia, dar nu are nevoie de o interfață Gateway de plată, el ar achiziționa / implementa doar primele trei servicii.
Acest lucru face ca lucrarea să fie simplă pentru dezvoltare, implementare, vânzări, întreținere și, la urma urmei, client / utilizator final.
Servicii Web
- Acestea sunt API-uri (Interfețe de programare a aplicațiilor) care facilitează interacțiunea dintre diferite programe software.
- Există un furnizor de servicii care găzduiește serviciul pe web. Ca parte a găzduirii, un WSDL este găzduit de furnizor.
- Când Clientul trimite un mesaj de solicitare către furnizorul de servicii, comunicarea se stabilește cu utilizarea URL-ului / WSDL.
- În exemplul dat mai jos, serverul de Geolocalizare găzduiește un serviciu Web care este utilizat de solicitantul de servicii.
Proces de testare SOA
Fiecare produs, model, infrastructură trebuie să treacă sub faza de testare, astfel încât să satisfacă utilizatorul final în ceea ce privește un produs de bună calitate. Testarea SOA nu se limitează doar la testarea unui strat / testarea protocolului de serviciu web. Aceasta este testarea generală a arhitecturii și a fiecărei minute din ea.
Abordarea testării poate fi similară cu cea a procesului normal de testare. adică
- Procesul de revizuire a cerințelor
- Planificarea testelor
- Proiectarea testului
- Configurare mediu
- Faza de execuție
- Faza de raportare
Procesul de testare SOA se învârte în jurul a 3 straturi în arhitectură:
- Consumatorii de servicii
- Straturi de proces
- Straturi de serviciu
Mergând cu același exemplu de mai sus, putem avea straturile noastre după cum urmează:
- Stratul consumatorului de servicii ajută la interacțiunea consumatorului. Acest lucru ajută la citirea informațiilor de la utilizatorul final și la returnarea răspunsului adecvat pentru solicitarea primită. Cu alte cuvinte, acesta are practic interfața UI.
- Acesta este stratul care se concentrează pe frontul de implementare. Acest strat din exemplul nostru va avea metode de autentificare, crearea unui utilizator etc.
- Straturile de servicii sunt funcțiile de afaceri în ceea ce privește serviciile. Toate serviciile care sunt de fapt apelate atunci când se efectuează o anumită sarcină se află în acest strat.
Testarea poate fi practic împărțită în 4 etape diferite;
Nivelul 1
1) Testarea nivelului de serviciu:
- Fiecare serviciu implicat în sistem este testat individual pe baza unei metode de solicitare și răspuns.
- Acest test este obligatoriu și foarte important pentru a continua cu alte procese de testare.
2) Testarea funcțională:
- Testul se desfășoară pentru servicii privind nevoile afacerii lor pentru a afla dacă răspunsul primit este corect.
- Nevoile de afaceri sunt mai întâi convertite în cazuri de testare și se formează declarațiile de solicitare.
- Apoi, declarațiile de solicitare sunt procesate pentru a vedea dacă răspunsurile obținute sunt corecte.
- În cazul datelor de intrare nevalide, ar trebui aruncat un cod de eroare adecvat sau ar trebui declanșat un mesaj de eroare adecvat.
- Formatele răspunsului, precum și scenariile negative, trebuie executate.
3) Testarea securității:
- Ori de câte ori este vorba despre un serviciu web, testarea securității joacă un rol cheie în succesul procesului de testare.
- Gateway-urile de autentificare, gateway-urile de plată etc. ar trebui să fie criptate atunci când datele sunt analizate.
- Când vine vorba de XML, trebuie verificate vulnerabilități precum CSRF, injecția SQL.
4) Testarea performanței:
- Serviciile utilizate în arhitectură sunt găzduite astfel încât o mulțime de alte aplicații să o poată folosi. Testarea performanței asigură credibilitatea acestor servicii.
- Testarea serviciilor trebuie făcută pentru a afla următoarele seturi de rezultate;
- Pentru a determina stabilitatea serviciilor.
- Pentru a valida scalabilitatea serviciilor.
- Comportamentul serviciului în condiții de sarcină maximă
- Pentru a găsi timpii de răspuns între servicii
Nivelul 2
1) Testarea procesului:
- Acest proces implică testarea diferitelor procese de afaceri.
- Aceasta ar trebui să cuprindă scenariile de integrare a serviciilor web și a aplicației care acoperă cerințele afacerii
- Utilizarea simulatoarelor ar trebui făcută pentru a genera date de intrare eșantion și validarea ar trebui să se facă pentru ieșirile respective.
- Fluxul de date din diferite straturi trebuie efectuat pentru a dovedi buna funcționare a sistemului atunci când acesta este integrat.
Nivelul 3
1) Testarea capăt la cap:
convertor de la youtube la wav gratuit online
- Această fază este menită să valideze cerințele de afaceri atât funcțional, cât și nefuncțional.
- UI-ul aplicației este validat.
- Procesul de afaceri implicat este testat.
- Fluxul de date cap la cap este validat în această fază.
- Lucrul cu toate serviciile atunci când serviciile sunt integrate unele cu altele este validat.
Nivelul 4
1) Testarea regresiei:
- Stabilitatea sistemului în versiunile de construcție incrementală este validată de această testare.
- Acest lucru poate fi realizat fie prin testare manuală / testare automată.
Provocări în testarea SOA
Cineva a spus pe bună dreptate: „Mai mare plasă; Mai mare este mizeria! ”. SOA poate deveni un copil cu adevărat complex flămând de atenție.
Cu alte cuvinte, cu atâtea părți minuscule care constituie arhitectura SOA, devine o treabă dificilă să o certificăm în testare.
- Greu să simulezi mediile de testare pentru a continua procesul de testare.
- Produsele implicate în model pot fi de aceeași tehnologie / furnizor. Dar, de asemenea, pot fi diferite. Mai multe probleme?
- Combinațiile de testare depășesc cu numărul de servicii / componente implicate.
- Complexitate în model
- Reproducerea / testarea problemelor este o treabă grea.
- Spre deosebire de alte modele, accentul principal al testării ar trebui să fie mai degrabă domeniul de activitate al companiei decât serviciul și caracteristica acestuia.
Instrumente de testare SOA
Există numeroase aplicații pentru testarea SOA. Instrumentele de testare SOA sunt selectate pe baza rezultatelor lor exacte și a unei productivități mai bune.
- SoapUI: Acesta este un instrument gratuit care vizează testarea serviciilor web. SoapUI este capabil să facă teste funcționale, teste de performanță și teste de încărcare
- Apache Jmeter: Acesta este, de asemenea, un utilitar OPEN SOURCE care este utilizat pentru analiza performanței invocării SOAP.
- JProfiler: Aceasta este utilizată pentru a opri sau detecta scurgerea de memorie, găsirea blocajelor în performanță etc.
- Test de service HP: Acesta este integrat la HP QC. Acesta este un instrument de testare funcțională, care acceptă, de asemenea, interfața de utilizare și testarea serviciilor partajate
Prin acest articol, am înțeles singularitatea modelului. Acest lucru este foarte diferit de modelul vechi, iar articolul oferă o idee bună despre el. Acest articol aruncă, de asemenea, o lumină asupra procedurii SOA și a modalităților de a continua cu testarea.
Despre autor: Acesta este un post de invitat de Subhasis. Lucrează ca o echipă de conducere, cu peste 8 ani de experiență corporativă în companii Fortune 500 IT.
Postați mai jos întrebările / comentariile legate de testarea SOA.
Toate cele bune!
Lectură recomandată
- Cele mai bune instrumente de testare software 2021 (Instrumente de automatizare a testelor de calitate)
- Descărcare eBook Descărcare Primer
- Tutorial de testare distructivă și testare nedistructivă
- Testarea funcțională Vs testarea non-funcțională
- Tutoriale detaliate pentru eclipsă pentru începători
- Top 15 instrumente de testare SOA pentru testeri
- Testare pereche sau Tutorial de testare completă cu instrumente și exemple
- Tutorial WAVE Accessibility Testing Tool