Forum IT Moldova

Notificări
Șterge tot

Obstacole ale strategiei API bazate pe date


Veronica
Postări: 226
Admin
Topic starter
(@veronica)
Estimable Member
S-a alăturat: 3 ani în urmă

Obstacole ale strategiei API bazate pe date

 

La prima vedere, este tentant să reînviați pur și simplu aceleași metodologii și cele mai bune practici care au avut atât de mult succes în evaluarea aplicațiilor de interfață grafică a utilizatorului (GUI) și să le aplicați testării SOAP și REST API. Aceasta este o greșeală: API-urile sunt tipuri foarte diferite de active, cu propriul set distinct de modele de proiectare, metode de acces, caracteristici de utilizare și expuneri la risc.
De exemplu, atunci când testați o aplicație prin intermediul interfeței sale standard de utilizator, gama de intrări potențiale este foarte constrânsă de ceea ce este posibil fizic într-o interfață grafică  nu este ușor să tastați manual un fișier video de 2 GB într-o casetă text într-un browser sau aplicație Windows. Pe de altă parte, nu este nevoie de niciun efort suplimentar pentru a încerca să transmiteți acel fișier video către un serviciu SOAP sau API REST.
Persoanele sau software-ul care interacționează cu API-ul pot trimite orice fel de cerere; specificațiile și logica aplicației API-ului în sine vor determina dacă este permis sau nu conținutul cererii și ce tip de răspuns va fi returnat.
Ademenirea API-urilor este că sunt deschise și încurajează interoperabilitatea, dar aceste atracții înmulțesc și complexitatea testării. Chiar și cel mai simplu API trebuie testat folosind un număr colosal de permutări, mult dincolo de ceea ce o persoană sau chiar o echipă mare poate gestiona manual. Testarea API fructuoasă menționată simplu impune ca întreprinderea să aplice o colecție specializată de practici de asigurare a calității care recunosc complexitatea inerentă găsită în calculul distribuit.
Testarea bazată pe date este o parte majoră a acestei metodologii, dar multe întreprinderi întâmpină dificultăți în încercarea de a o încorpora în mod corespunzător în operațiunile lor de zi cu zi. Să analizăm câțiva factori care contribuie la acest deficit.
  • Presiuni de timp. Influențe diverse, cum ar fi practicile de livrare agile, presiunile de afaceri competitive, metodologiile de testare învechite și programele neclintite fac echipă pentru a exercita o presiune enormă asupra dezvoltatorilor de software și a profesioniștilor în asigurarea calității. Unitatea neobosită de a lansa continuu noi funcționalități API înseamnă că rareori există suficient timp pentru arhitectura corectă a testelor refolosibile capabile să încorporeze în mod eficient date. În schimb, testerii tind să refolosească aceeași mână de înregistrări statice, eșantion. Această tactică este ușor de replicat (și la urma urmei, consistența este importantă), dar nu este departe de a reprezenta cu exactitate utilizarea din lumea reală sau setul complet de capabilități API. De exemplu, tăierea colțurilor prin utilizarea înregistrărilor de testare dintr-o colecție de cinci clienți pierde combinațiile aproape infinite de date care vor rezulta în producție.
 
  • Bariere de comunicare. Multe organizații separă analiștii de afaceri și utilizatorii care specifică funcționalitatea care trebuie furnizată de un API de la echipa QA care are sarcina de a-l testa. Până la începerea fazei de testare, specificațiile s-au pierdut în traducere, iar testerii - care ar putea fi chiar angajați ai unei firme terțe de externalizare care lucrează de cealaltă parte a globului - nu sunt foarte clari cu privire la scopul exact al API în sine, cu atât mai puțin nuanțele parametrilor săi de intrare și de ieșire. Această necunoaștere face imposibilă conceperea unor teste eficiente, de anvergură, bazate pe date. Fără cunoștințe precise despre obiectivele de afaceri ale API-ului, este firesc ca echipa QA să proiecteze cazuri de testare pe baza unui set relativ limitat de date codificate în mod dur.
  • Unelte inadecvate. Chiar și cu cele mai bune intenții, este imposibil să creați rapid și ușor teste API bazate pe date folosind o mare parte din instrumentele software de pe piață. Cu excepția tehnologiilor logice precum SmartBear’s Ready! API, majoritatea instrumentelor de evaluare API au fost produse pentru dezvoltatorii de software. Aceste utilități necesită frecvent scripturi extinse pentru a efectua chiar și cele mai rudimentare interacțiuni API, cu atât mai puțin un set complet de sonde automate bazate pe date. Confruntați cu programări strânse, instrumente de testare funcționale slabe și sarcina de a scrie scripturi abundente, nu este de mirare că mulți testeri iau calea mai ușoară de a tasta manual date de intrare API eșantion și de a arunca o privire asupra rezultatelor pentru a detecta anomalii. Adoptarea unei metodologii de testare API bazate pe date este o condiție esențială pentru a stabili dacă API-urile dvs. a producției sunt de calitate. Dincolo de validarea funcționalității, aceste tactici servesc și ca bază pentru confirmarea faptului că API-urile dvs. își vor îndeplini obligațiile de performanță și securitate.
Etichete subiectului
Distribuie: