Bugul «arată bine»: cum să depistezi eșecurile tăcute în aplicația ta creată cu IA

Creatorul tău de aplicații cu IA a produs un formular de contact. Ți-ai scris numele, ai apăsat trimite, ai văzut mesajul prietenos de succes și ai mers mai departe. O săptămână mai târziu îi menționezi pagina unui prieten, care întreabă dacă a completat-o cineva. Te duci să verifici. Trei completări stau într-un fel de stare în așteptare. Niciuna nu a ajuns vreodată în inboxul tău.

Acesta e cel mai frecvent mod de eșec pentru o aplicație creată cu IA, și nu e cel de care își fac griji cei mai mulți oameni. Bugurile care aruncă un mesaj de eroare roșu sunt ușor de găsit — creatorul tău de aplicații cu IA le va repara în două minute. Bugurile periculoase sunt cele în care ecranul arată bine, utilizatorul crede că a terminat, iar tu nu afli timp de o lună.

Această postare e o listă de verificare pentru a le prinde pe acelea. Nu „cum să testezi ca un inginer QA” — doar cele cinci locuri în care utilizatorii reali se ard cu o aplicație creată cu IA care pare că funcționează.

1. Trimite ceva și verifică dacă chiar a ajuns undeva

Când creatorul tău de aplicații cu IA face un formular, pune o singură întrebare: unde se duc datele? Nu la modul abstract — literalmente, unde te poți duce să te uiți la ele după ce trimiți?

Un număr surprinzător de mare dintre aceste formulare trimit datele într-un handler care returnează „Mulțumim!” fără să trimită vreodată e-mailul, să salveze într-o bază de date sau să anunțe pe cineva. Formularul e o fațadă politicoasă. Așa că:

  • Trimite o intrare de test cu un nume fals, dar evident, precum „ZZZ TEST”.
  • Deschide panoul de control, baza de date, inboxul, foaia de calcul — oriunde ar trebui să aterizeze completările.
  • Găsește intrarea ta „ZZZ TEST” acolo, cu marcajul de timp corect.

Dacă nu o poți găsi în mai puțin de un minut, formularul tău e stricat, chiar dacă te-a felicitat pentru trimitere. Am văzut un formular de „contact” pe o pagină de destinație plătită care a colectat zero lead-uri timp de trei săptămâni, pentru că pasul de e-mail nu fusese niciodată conectat. Pagina arăta perfect.

2. Încearcă drumul pe care nu l-ai face niciodată

Tu știi ce face aplicația ta pentru că ai urmărit-o construindu-se. Apeși butoanele în aceeași ordine de fiecare dată. Utilizatorii reali nu vor face asta.

Alege drumul care pare cel mai ciudat:

  • Apasă trimite de două ori la rând, rapid.
  • Reîmprospătează pagina în mijlocul a ceva ce faci.
  • Deschide-o într-o fereastră privată, fără autentificare.
  • Scrie un nume cu apostrof (O’Brien e distrugătorul clasic).
  • Scrie un număr într-un câmp care cere unul, dar fă-l negativ sau zero.

Dacă ceva se strică vizibil, ăsta e un bug real — dar măcar e unul zgomotos. Versiunea „arată bine” e când al doilea clic a creat o înregistrare duplicat și nu ai cum să-ți dai seama de pe ecran. Du-te și verifică baza de date și caută două rânduri „ZZZ TEST” cu marcaje de timp la două secunde distanță. Dacă le găsești, formularul are nevoie de o protecție anti-duplicat.

3. Așteaptă o zi, apoi revino

O mulțime de cod generat cu IA folosește memorie temporară care se resetează când aplicația se republică sau se repornește. Aplicația ține datele tale în ceva ce un dezvoltator ar numi „stare în memorie” (in-memory state) — în regulă pentru un demo, dezastruos pentru ceva real.

Testul e brutal și ușor: introdu niște date, închide tabul, așteaptă douăzeci și patru de ore, revino. Dacă datele tale au dispărut sau s-au amestecat, stocarea nu e reală. Creatorul tău de aplicații cu IA probabil trebuie să i se spună, în limbaj simplu: „aceste date trebuie să supraviețuiască unei reporniri de server”. Cele mai multe creatoare vor trece la o bază de date când li se cere; unele nu o vor face decât dacă ceri.

Poți rula o versiune mai rapidă a acestui test cerându-i creatorului tău, în chat: „unde sunt stocate datele pentru acest formular și vor supraviețui unei republicări?”. Dacă răspunsul menționează „în memorie”, „sesiune” sau „pentru această rulare”, ai găsit bugul înainte ca vreun utilizator să dea de el.

4. Arată-o unei persoane care nu ești tu

Tu știi ce înseamnă aplicația ta. Tu ai proiectat-o. Tu ai numit butoanele. Etichetele îți sunt evidente pentru că tu le-ai scris.

Arată-o unui prieten fără să explici nimic. Spune „Încearcă să faci X”. Urmărește-l. Nu-l ajuta. Trei lucruri se vor întâmpla:

  • Va da clic undeva unde nu te așteptai, iar aplicația va face ceva surprinzător.
  • Se va bloca la o etichetă care părea evidentă când ai scris-o.
  • Va face lucrul pe care voiai să-l facă, dar în jumătate din pașii pe care ți-i imaginai, și va sări un ecran cu totul — uneori un ecran pe care aplicația se baza ca el să-l completeze.

Fiecare dintre acestea e un bug real. Niciunul nu aruncă o eroare. Prietenul va spune „A, e drăguț” și îți va înapoia laptopul. Tu vei ști, urmărindu-i fața, că s-a pierdut timp de treizeci de secunde într-un loc despre care nu credeai că are vreo cusătură.

5. Citește e-mailul pe care îl trimite, pe telefon

Dacă aplicația ta trimite e-mailuri — confirmări, resetări de parolă, facturi — deschide unul pe telefon și unul într-un client de e-mail diferit de cel pe care îl folosești de obicei. Aplicațiile create cu IA tind să genereze e-mailuri care arată superb în Gmail pe desktop și arată ca furnicături în Outlook pe Android.

Aceeași logică se aplică chitanțelor PDF, exporturilor descărcabile și butoanelor „distribuie acest link”. Lucrul care iese în afara aplicației tale, în lumea reală, e cea mai puțin testată parte a unei construcții cu IA. E și partea pe care utilizatorii tăi o văd cel mai mult. Un fondator pe care îl cunosc a livrat un flux de checkout frumos a cărui chitanță PDF, pe iPhone, era un singur pătrat negru. Nimeni nu s-a plâns — pur și simplu au încetat să cumpere.

Adevărul incomod despre „funcționează”

Când construiești cu un creator de aplicații cu IA, „funcționează” înseamnă „a rulat pe mașina mea, în browserul meu, cu exact clicurile mele, în ziua în care am construit-o”. Asta e o afirmație mult mai mică decât pare.

Aplicațiile reale funcționează când:

  • O folosește o persoană diferită.
  • Datele rămân mai mult decât pe durata demoului.
  • Drumul prin aplicație e unul pe care nu l-ai anticipat.
  • Rezultatul e citit pe un dispozitiv pe care nu l-ai testat.

Nu trebuie să devii tester de software ca să livrezi ceva bun. Trebuie doar să faci aceste cinci verificări o dată, în ziua dinainte să spui cuiva că aplicația există. Durează cam douăzeci de minute. Vor prinde nouă din zece dintre bugurile tăcute care altfel ar ajunge la un utilizator plătitor.

Dacă ai timp doar pentru una, fă-o pe prima. Trimite ceva. Găsește-l de cealaltă parte. Cele mai multe aplicații create cu IA arată bine. Trucul e să te asiguri că chiar sunt.

Dacă asta a rezonat, următorul lucru care merită făcut e să stai cu o foaie de hârtie și să notezi cele trei lucruri la care aplicația ta nu trebuie niciodată să eșueze tăcut — formularul, e-mailul, plata, oricare ar fi al tău — și să parcurgi fiecare dintre ele cu verificările de mai sus. Douăzeci de minute acum îți cumpără o mulțime de nopți de somn mai târziu.