Pe măsură ce inteligența artificială redefinește peisajul digital, domeniul Quality Assurance (QA) trece printr-o transformare profundă. Testarea asistată de AI nu reprezintă doar o îmbunătățire tehnologică, ci o schimbare de paradigmă care redefinește rolul QA în dezvoltarea software modernă. Departe de a înlocui testatorii, AI-ul îi ajută și îi potențează.
În cadrul Programmers' Week 2025 - evenimentul de referință al Cognizant în România, desfășurat între 15-19 septembrie - au fost prezentate o serie de idei și concluzii noi. Acest eveniment, născut din tradiția noastră de inovație și schimb de cunoștințe, continuă acum cu energie proaspătă și o temă orientată spre viitor. Anul acesta, am explorat modul în care AI-ul transformă dezvoltarea software la toate nivelurile - de la agenți backend și aplicații mobile, până la DevOps, QA și guvernanța proiectelor.
Echipele de dezvoltare software lucrează astăzi contra-cronometru. Funcționalitățile sunt dezvoltate, testate și lansate în doar câteva zile, uneori chiar ore. În acest ritm alert al livrărilor, asigurarea calității nu mai este doar o bifă pe listă, ci devine esențială pentru succes. Odată cu integrarea AI-ului în produse - de la chatboți la motoare de recomandare - rolul QA nu mai este doar de a verifica dacă totul funcționează corect. Acum, QA înseamnă să asiguri încrederea în sisteme care generează rezultate probabilistice, adesea imprevizibile.
Metodele tradiționale de QA nu mai fac față atunci când vine vorba de testarea componentelor bazate pe AI. Printre provocările principale se numără:
Comportamentul nedeterminist al modelelor AI;
Sensibilitatea datelor și riscul de bias;
Pentru a răspunde acestor provocări, QA trebuie să evolueze într-o disciplină mai inteligentă și adaptabilă.
Viziunea noastră pentru testarea asistată de AI pune accent pe colaborarea dintre oameni și tehnologie. Folosind modele de limbaj avansate (LLM), echipele de QA pot:
Să genereze scenarii de testare pornind de la user stories, loguri sau date reale din producție;
Să creeze date sintetice pentru domenii sensibile precum sănătatea sau finanțele;
Să repare automat testele instabile;
Această schimbare transformă QA-ul dintr-un proces reactiv într-un motor proactiv al inovației. Mai jos sunt trei exemple relevante care arată cum AI-ul schimbă practicile de QA: de la testarea prompturilor și generarea de date sintetice, până la trierea automată a bug-urilor - fiecare dintre acestea oferă o perspectivă asupra unui viitor în care QA nu mai este un blocaj, ci un catalizator pentru inovație.
Ingineria prompturilor devine un pilon esențial în asigurarea calității sistemelor bazate pe inteligență artificială. Atunci când testăm modele de limbaj mari (LLM), echipele de QA trebuie să meargă dincolo de verificarea funcțională și să evalueze aspecte precum fiabilitatea semantică, consistența și siguranța.
Folosim trei metode principale de evaluare:
Evaluare umană - Realizată de experți din domeniu, această metodă surprinde nuanțe și contexte greu de cuantificat. Este considerată standardul de aur în evaluarea calității, deși poate fi consumatoare de timp și subiectivă.
LLM ca judecător (LLMaaJ) - Un model LLM evaluează răspunsurile generate de un alt model. Eficiența acestei metode depinde de:
Alegerea modelului: Modelul evaluator trebuie să fie cel puțin la fel de performant sau mai avansat decât cel evaluat.
Această metodă folosește sisteme automate de scor pentru a evalua răspunsurile LLM, corelând calitățile lingvistice cu indicatori cantitativi:
Fluență
Obiectiv: exprimare naturală și sigură;
Metrică:
Coerență
Obiectiv: flux logic al ideilor;
Metrică:
Relevanță
Obiectiv: potrivirea cu contextul;
Metrici:
Utilitate
Obiectiv: cât de folositor este răspunsul;
Metrici:
F1 Score (echilibrul între precizie și acoperire);
Precizie (proporția informațiilor corecte);
Potrivirea sensului & înțelegerea semantică
Obiectiv: păstrarea sensului intenționat, dincolo de suprapunerea cuvintelor;
Metrici:
METEOR (sinonime, variații de cuvinte, ordine);
Prin combinarea acestor metode, asigurăm un cadru de evaluare echilibrat și robust, aliniat cu angajamentul nostru pentru calitate, inovație și soluții AI centrate pe client.
Folosim strategii structurate pentru evaluarea modelelor LLM, printre care:
Comparare side-by-side: Un LLM compară un răspuns generat cu unul de referință și acordă un scor.
Scorare individuală: Modelul evaluează un singur răspuns, independent.
Fig. 1. Strategii de jurizare
Fiecare metodă se concentrează pe criterii esențiale precum acuratețea tematică, gradul de informare, fluența și detectarea halucinațiilor. Scorurile pot fi numerice sau categorice, în funcție de obiectivul evaluării. Aceste tehnici ne ajută să ne asigurăm că testarea asistată de AI este atât fiabilă, cât și aliniată cu așteptările din lumea reală.
Evaluarea modelelor LLM evoluează spre o integrare completă în ciclul de viață al dezvoltării AI. Acest lucru presupune automatizarea etapelor de evaluare, îmbunătățirea seturilor de date de referință și dezvoltarea unor modele specializate pentru evaluare. De asemenea, feedbackul utilizatorilor în timp real este integrat pentru a rafina constant performanța, de la colectarea și procesarea datelor, la ingineria prompturilor, generare și evaluare.
Fig.2. Ciclul de dezvoltare al AI
Suite de validare a prompturilor, care testează dacă rezultatele generate sunt cele așteptate, pe mai multe versiuni și configurații de model (de exemplu, temperatură, lungimea contextului).
Testare automată de regresie pentru prompturi, pentru a ne asigura că modificările aduse modelelor sau structurii prompturilor nu introduc erori sau halucinații.
Generarea de prompturi pentru cazuri-limită și scenarii adversariale, simulând inputuri greșite, întrebări ambigue sau jargon specific domeniului, pentru a testa robustețea modelului.
Aceste practici transformă testarea prompturilor dintr-o activitate manuală și experimentală într-o disciplină QA structurată, esențială pentru menținerea încrederii în funcționalitățile bazate pe AI.
Sistemele bazate pe agenți oferă o soluție scalabilă pentru testarea în domenii cu complexitate ridicată și reglementări stricte, precum sănătatea sau finanțele.
Îmbunătățirile specifice QA includ:
Generarea de date sintetice pe scenarii, unde agenții simulează fluxuri de lucru realiste (de exemplu, parcursul unui pacient sau tranzacții financiare) pentru a testa comportamentul sistemului în condiții variate.
Agenți de validare care asigură integritatea schemelor de date, respectarea constrângerilor și a regulilor de conformitate (precum HIPAA, GDPR) în timpul creării datelor de test.
Interfețe QA în limbaj natural, care permit testerilor să definească scenarii de testare conversațional, acestea fiind apoi transformate de agenți în cazuri de test structurate.
Acest cadru modular de inteligență permite echipelor de QA să automatizeze configurarea testelor complexe, să crească acoperirea și să asigure conformitatea, fără efort manual suplimentar.
Triajul bugurilor este adesea un blocaj în fluxurile de lucru QA. Sistemele de triere bazate pe AI simplifică acest proces prin clasificare și prioritizare inteligentă.
Funcționalitățile extinse pentru QA includ:
Detectarea similarității semantice folosind embeddings, pentru a identifica buguri duplicate sau probleme înrudite în depozite mari de defecte.
Agenți de filtrare a zgomotului și spamului, care combină modele LLM cu reguli euristice pentru a elimina rapoartele irelevante sau de calitate scăzută.
Validare contextuală, care verifică dacă problemele pot fi reproduse în diferite medii, versiuni și configurații, înainte de a le atribui un nivel de severitate.
Prin integrarea acestor capabilități în pipeline-urile QA, echipele pot reduce timpul de triere, pot crește acuratețea identificării defectelor și pot concentra efortul de dezvoltare acolo unde contează cel mai mult.
Testarea asistată de AI transformă provocările tradiționale din QA în oportunități de creștere:
Presiunea timpului? → Folosește selecția inteligentă a regresiilor pentru a accelera ciclurile de testare fără a compromite calitatea.
Lipsă de acoperire? → Generează date sintetice pentru a extinde scenariile de testare și a descoperi defecte ascunse.
Teste instabile? → Implementează scripturi de auto-vindecare pentru a stabiliza pipeline-urile și a reduce efortul de mentenanță.
Comportament imprevizibil al AI? → Dezvoltă cadre de testare specializate pentru a asigura fiabilitatea și încrederea în sistemele AI.
Blocaje manuale? → Adoptă trierea automată a defectelor pentru a eficientiza fluxurile de lucru și a elibera echipele pentru activități strategice.
AI nu înlocuiește testerii, ci îi ajută să fie mai eficienți. Pentru a rămâne relevanți, testerii trebuie să dezvolte noi abilități precum prompt engineering, înțelegerea modelelor AI, analiza datelor și capacitatea de a interpreta sugestiile generate de AI în contextul testării. Transformând procesul de QA într-o funcție strategică, organizațiile pot trece cu încredere de la idee la produs. Viitorul testării nu este doar automatizat, ci inteligent, adaptiv și integrat profund în ciclul de dezvoltare.
Data viitoare când faci un commit, întreabă-te: Cum poate AI să ajute la testarea acestui cod înainte să ajungă la utilizator?
Programarea, securitatea și AI-ul
Marți, 30 Septembrie, ora 18:00
msg systems Romania
Timișoara
Facebook Meetup StreamEvent YouTubede Denisa Lupu
de Ovidiu Mățan
de Ovidiu Mățan
de Paul Orha