11. 9. 2026

Google ARTEMIS: AI agent testuje Android na reálnom telefóne

Android telefony v testovací laboratoři řízené AI coding agentem

Google otvoril zaujímavú medzeru medzi coding agentom a mobilným QA. Open-source projekt ARTEMIS prijme test v prirodzenom jazyku, pripojí Android telefón alebo emulátor, aplikáciu skutočne prejde, nazbiera screenshoty a Logcat a vráti štruktúrovaný report.

Je to užitočnejšie než agent, ktorý iba napíše Espresso test a vyhlási prácu za hotovú. Mobilné aplikácie zlyhávajú na systémových dialógoch, oprávneniach, klávesnici, pomalom načítaní, vlastných Compose alebo Flutter prvkoch a stavoch, ktoré v zdrojovom kóde nevidno. ARTEMIS vkladá agenta priamo do spätnej väzby medzi kódom a reálnym zariadením.

Repozitár je nový a rýchlo sa mení. Google 10. septembra doplnil vlastný Accessibility Helper pre spoľahlivejšie získanie hierarchie UI a 11. septembra pokračoval backendom pre playground. Preto ho vnímam ako zaujímavý open-source základ pre pilot, nie ako hotovú enterprise testovaciu platformu.

Ako ARTEMIS funguje

Na vývojárskom počítači beží Python služba a webová konzola. Cez ADB sa pripojí k Android zariadeniu alebo emulátoru, z obrazovky a hierarchie UI zostaví aktuálny stav a agent vyberie ďalšiu akciu. Keď bežné accessibility elementy nestačia, používa OCR a vizuálnu lokalizáciu pre vlastné Canvas, Compose alebo Flutter rozhrania.

Pre coding agentov je dôležitý vstavaný MCP server. Codex, Claude Code, Antigravity alebo Windsurf nemusia klikať cez ďalší dashboard. Dostanú úzke nástroje na spustenie úlohy, kontrolu stavu zariadenia, správu behu, diagnostiku a prezeranie trace. Agent môže po zmene kódu zostaviť APK, nainštalovať ho, prejsť konkrétny scenár a priložiť screenshoty aj logy k výsledku.

ARTEMIS má dva prevádzkové profily:

  • Flash je rýchla reaktívna slučka, podľa dokumentácie približne 3–5 sekúnd na krok. Nemá plán, checkpointy, pre-execution safety net ani záverečný report a predvolený počet krokov je neobmedzený.
  • Pro používa Planner, Operator a read-only Checker. Každú akciu vopred kontroluje proti UI stromu alebo pixelom, drží priebežný plán a môže overovať checkpointy. Jeden krok má typicky trvať približne 15–40 sekúnd.

Toto rozdelenie dáva zmysel. Flash je vhodný pre lacné smoke testy s jasným výsledkom. Pro patrí na dlhšiu exploráciu, reprodukciu nestabilného bugu alebo scenár, v ktorom je dôkaz dôležitejší než rýchlosť.

Kde to dáva zmysel vývojovému tímu

Najlepšie prvé nasadenie nie je „otestuj celú aplikáciu.“ Je to jeden konkrétny tok, ktorý dnes niekto opakovane prechádza ručne:

  • čistá inštalácia, onboarding a žiadosti o oprávnenia,
  • prihlásenie testovacím účtom a kontrola neočakávaných popupov,
  • reprodukcia bugu podľa krokov od supportu,
  • overenie nákupu na sandbox backende bez skutočnej platby,
  • kontrola správania pri pomalej sieti alebo návrate aplikácie z pozadia,
  • zber screenshotu, Logcatu a časovania pre issue v Jira alebo GitHube.

V CI by som ARTEMIS nepoužil ako náhradu deterministických unit a instrumentačných testov. Zaradil by som ho až za build a základnú test suite ako adaptívnu vrstvu. Pevné testy rýchlo odhalia známu regresiu; agent skúsi dlhšiu end-to-end cestu, prispôsobí sa drobnej zmene layoutu a nazbiera dôkaz pre človeka.

Praktický pipeline môže vyzerať takto:

1. CI zostaví APK a pripraví izolovaný emulátor alebo zariadenie. 2. Testovací backend vloží známe dáta a účet bez reálnych oprávnení. 3. Agent dostane scenár s explicitným cieľom, zakázanými akciami a ‚assert‘ podmienkami. 4. ARTEMIS vykoná tok a uloží trace, screenshoty, logy a konečný stav. 5. Deterministický checker rozhodne pass/fail; agentov slovný report je iba doplnok. 6. Zlyhanie vytvorí artefakt na review, ale samo nič nenasadí do produkcie.

99 % nie je licencia vypnúť QA

Autori ARTEMIS uvádzajú viac než 99% úspešnosť na AndroidWorld, benchmarku Google Research so 116 parametrizovanými úlohami v 20 aplikáciách. Je to zaujímavý signál, ale číslo pochádza od autorov projektu a repozitár zatiaľ neponúka stabilný release ani nezávislé porovnanie na vašich aplikáciách.

AndroidWorld navyše testuje presne definované úlohy so stavovými reward funkciami. Firemná aplikácia má vlastné komponenty, preklady, backendové latencie, biometriu, push notifikácie a chyby, ktoré žiadny verejný benchmark nepokrýva. Dôležitejšia metrika preto nie je skóre z README, ale podiel vašich scenárov dokončených bez zásahu, počet falošných pass/fail výsledkov, čas na reprodukciu chyby a cena jedného užitočného reportu.

Bezpečnosť: testovací telefón nie je hračka

ARTEMIS inštaluje do zariadenia Accessibility Helper, ktorý číta UI hierarchiu. Dokumentácia hovorí, že helper sám komunikuje iba na telefóne, no celý systém zároveň pracuje so screenshotmi, OCR, logmi a zvoleným modelovým backendom. Do prvého pilotu by som preto nedal osobný telefón ani produkčný účet.

Minimum pre bezpečnú prevádzku:

  • dedikované zariadenie alebo emulátor bez osobných dát,
  • testovací tenant, syntetické kontakty a sandbox platobné brány,
  • obmedzené ADB a sieťové oprávnenia,
  • žiadne OTP, produkčné API kľúče ani zákaznícke screenshoty v prompte,
  • maximálny počet krokov a časový limit aj pre Flash,
  • zakázané systémové akcie a ľudské potvrdenie pred inštaláciou, mazaním alebo nákupom,
  • archivácia trace bez tajomstiev a s jasnou retenčnou dobou.

Text z aplikácie je vstupom pre agenta. Testovaný webview, chat alebo dokument môže obsahovať prompt injection. Coding agent preto nesmie prijať inštrukcie z obrazovky ako nové oprávnenie. Pravidlá behu musia mať vyššiu prioritu a povolené akcie musí vynucovať nástrojová vrstva.

Čo si z toho zobrať

ARTEMIS nie je dôkaz, že mobilné QA môže odísť domov. Je to dôkaz, že coding agent môže dostať oči, ruky a diagnostiku na reálnom Androide. Tým sa skracuje najdrahšia medzera v agentnom vývoji: model už nemusí skončiť pri zmenenom kóde, ale môže overiť, čo aplikácia skutočne urobila.

Začal by som jedným stabilným smoke scenárom na izolovanom emulátore. Ak agent opakovane dodá správny pass/fail, použiteľný trace a ušetrí človeku čas, až potom by som pridal reálne zariadenie, viac aplikácií a exploratívne testy. Autonómia v QA má hodnotu iba vtedy, keď po nej zostane reprodukovateľný dôkaz.

Zdroje: YouTube signál Jirky Herníka 10 000 agentov a 88 hodín, Google ARTEMIS repository and documentation, aktuálna história commitov ARTEMIS, Google Research AndroidWorld a jeho open-source benchmark environment.