AI u testiranju web rješenja
- Napisao/la Nenad Crnko
Brže, jednostavnije i pouzdanije.
Jedno od zanimljivijih predavanja na zadnjem Infobip Shiftu u Zadru održala je Debbie O’Brien (Microsoft Principal Technical Program Manager). U njemu je predstavila prednosti koje alat Playwright u suradnji s MCP (Model Context Protocol) tehnologijom donosi u pogledu automatizacije testiranja web rješenja u preglednicima.
Pomoću Playwright MCP tehnologije postiže se nova razina inteligentne automatizacije testiranja, što je Debbie demonstrirala na konkretnom primjeru korištenja. S Debbie je u direktnom kontaktu dogovoreno da za primjer koji je prezentirala na konferenciji dozvoli objavu u časopisu VIDI, kako bismo mogli vjernim čitateljima predstaviti o čemu je riječ, što predstavlja svojevrsnu ekskluzivu u suradnji s predavačima na konferenciji. Budući da je u ovom slučaju riječ o spoju dvije različite tehnologije, objasnimo prvo svaku od njih.

MCP (Model Context Protocol)
MCP (Model Context Protocol) predstavlja protokol koji omogućava standardizaciju načina na koji različite aplikacije omogućuju pristup danas izuzetno popularnim LLM sustavima. Na taj način LLM sustavi, ali potencijalno i drugi AI sustavi, mogu na dvosmjerni način razmjenjivati podatke iz različitih izvora podataka, servisa i drugih alata. Pri tome MCP u sebi uključuje danas podrazumijevane karakteristike modernih IT sustava, kao što su sigurnost, efikasnost i mogućnost prilagodbe sustava rastućim zahtjevima (skalabilnost).
Kako sve to skupa djeluje u praksi? MCP klijent, koji je obično integriran u neku od API aplikacija, priprema zahtjev za izvođenje određene akcije, odnosno pristup potrebnim podacima. Takav zahtjev se iz MCP klijenta šalje do MCP servera, a on ih obrađuje i prosljeđuje odgovarajućem izvoru podataka ili vanjskom alatu. Nakon prikupljanja traženih podataka, oni se šalju MCP serveru, a on ih na kraju vraća na polaznu točku, to jest MCP klijentu. Na taj način MCP protokol predstavlja svojevrsnu analogiju dobro poznatoj USB-C tehnologiji, samo što je u ovom slučaju riječ o prijenosu AI orijentiranih podataka.
Playwright
Playwright predstavlja open-source tehnologiju koju je razvio Microsoft kako bi pojednostavio i automatizirao testiranje web aplikacija. Pomoću Playwright tehnologije moguće je simulirati stvarne korisnikove akcije u pregledniku, kao što su unos podataka, klikanje mišem, kretanje po stranici i slično.
Iako je razvijena od strane Microsofta, Playwright tehnologija nije ograničena samo na Microsoftove alate, što znači da je pogodna za provođenje testiranja u svim modernim preglednicima (Chrome, Edge, Firefox i Safari). Također, može se koristi u suradnji s više najpopularnijih web orijentiranih programskih jezika, kao što su JavaScript, TypeScript, Python, C# i Java. Neke od karakteristika Playwright tehnologije koje su vrlo korisne kod testiranja web aplikacija su mogućnost paralelnog provođenja testiranja, izvođenje testiranja u različitim kontekstima aplikacija (kao da više različitih korisnika izvodi testiranje), mogućnost čekanja na pojavu određenih objekata da bi se tek onda provelo testiranje i slično.

Model Context Protocol (MCP): Protokol za standardizaciju načina na koji aplikacije omogućavaju pristup svojih sadržaja do LLM sustava
Playwright MCP
Već na temelju kratkog opisa prethodne dvije tehnologije, jasno je da su one međusobno prilično kompatibilne. Dok Playwright omogućava napredno testiranje web orijentiranih aplikacija, MCP može „otvoriti kanal za komunikaciju“ između AI modula i web aplikacija. Povezivanjem ovoga stižemo do onoga što se naziva Playwright MCP.
Pomoću Playwright MCP tehnologije, AI alati mogu „razumjeti“ sadržaj web stranice (aplikacije) te na taj način pripremiti pametno testiranje stranice, bez potrebe da to rade ljudi. Naravno, to nudi i brojne druge uobičajene prednosti AI tehnologije u odnosu na ljude koji pokušavaju napraviti istu stvar: veću količinu različitih testova pripremljenih u istom periodu, podršku za veći broj povezanih tehnologija kao što su korisnička sučelja i slično.
Pogledajmo kako izgleda korištenje ove dvije objedinjene tehnologije u praksi:
Prvo je potrebno instalirati i konfigurirati server kako bi on mogao primati naredbe i pretvarati ih u odgovarajuće operacije u nekom od podržanih preglednika. Bez ovog koraka nije moguće ostaviti komunikaciju između preglednika i LLM-a ili nekog drugog AI modula.
U sljedećem koraku AI modul uz pomoć MCP protokola izvodi svojevrsno „propitivanje“ postojećeg sustava/aplikacije/stranice kako bi saznao što je sve na raspolaganju za automatizaciju testiranja. Riječ je o ranije spomenutim mogućnostima, kao što su mogućnost unosa podataka na stranici, podržane operacije klikanjem mišem, kretanje po stranici i ostalo.
Nakon dovršetka prethodnog koraka, AI modul na temelju zadanog scenarija može pripremiti sve što je potrebno za automatizaciju testiranja u pregledniku.
Sad kad je AI modul pripremio automatizaciju testiranja, može se stvarno započeti s njezinim provođenjem. Playwright modul izvodi u jednom ili više različitih preglednika ono što mu preko MCP protokola „naređuje“ AI modul.
Nakon izvođenja svake od primljenih naredbi u AI modul se ponovo vraća vrlo detaljna povratna informacija o tome što se stvarno dogodilo tijekom izvođenja naredbe. Na temelju tih rezultata AI modul može izvesti različite analize i rezultate, odnosno predložiti i pripremiti sljedeće korake u testiranju web aplikacije.
Koje su prednosti i mane u odnosu na ručno testiranje web aplikacija pomoću Playwright MCP tehnologije?
Ako vas zanima ostatak teme, cijeli članak nalazi se na našoj VidiLAB.com stranici. Slijedite link: https://www.vidilab.com/teme/softverska-tema/7786-ai-u-testiranju-web-rjesenja.