Služby · Testovanie desktop aplikácií

Automatizované testovanie desktop aplikácií

Skrátime opakované ručné kontroly vašej Windows alebo Electron aplikácie pomocou stabilných automatizovaných testov. Navrhneme ich architektúru, zapojíme ich do pravidelného spúšťania a podľa dohody sa postaráme aj o údržbu. Riešenie staviame na overených open-source nástrojoch a odovzdáme ho vášmu tímu.

  • pywinauto
  • FlaUI
  • Playwright

O službe

Desktop nemusí znamenať manuálne testovanie

Desktop aplikácie sa často testujú výhradne ručne, pretože ich automatizácia je náročnejšia než pri webe. Pri dlhých kontrolách pred desktop releasmi však môže automatizácia ušetriť významnú časť opakovanej práce.

Automatizujeme natívne Windows aplikácie (WPF, WinForms, Win32, WinUI) aj aplikácie postavené na Electrone. Podľa technológie pracujeme cez Windows UI Automation, Win32 alebo rozhranie Electron aplikácie a uprednostňujeme vlastnosti prvkov pred porovnávaním obrázkov.

Výsledkom je sada automatizovaných kontrol, ktorú môžete spúšťať opakovane – na lokálnom stroji, vo virtuálnom prostredí alebo v CI.

Jednoduchý vstup

Čo od vás potrebujeme

Čo získate

Čo vám automatizácia desktopu prinesie

Kratšie kontroly pred releasom

Opakované kontroly môžu bežať automaticky cez noc alebo pri vybraných buildoch. Konkrétny čas závisí od rozsahu sady, prostredia aj infraštruktúry.

Opakovateľnosť a presnosť

Pri rovnakých podmienkach vykoná automat ten istý scenár konzistentne, bez preklepov a vynechaných krokov, takže sa výsledky behov dajú lepšie porovnať.

Testy odolnejšie voči zmenám vzhľadu

Podľa technológie používame Windows UI Automation, Win32 alebo rozhranie Electron aplikácie a uprednostňujeme stabilné vlastnosti prvkov pred súradnicami na obrazovke.

Pokrytie inštalácií a aktualizácií

Automatizovať vieme aj inštaláciu, aktualizáciu a migráciu dát – scenáre, ktoré sa ručne testujú najťažšie a pri opakovaných releasoch zaberajú veľa času.

Ako to prebieha

Možný priebeh spolupráce

Konkrétne kroky a ich poradie prispôsobíme vašej situácii, dostupným podkladom a dohodnutému výstupu.

  1. Technická analýza aplikácie

    Overíme technológiu aplikácie, dostupné automatizačné rozhranie a stabilné vlastnosti prvkov. Ak treba doplniť napríklad automation ID, pripravíme konkrétne odporúčania.

  2. Pilot na kľúčovom scenári

    Na kľúčovom scenári overíme vhodnosť a stabilitu technického prístupu ešte pred tvorbou celej sady. Zároveň navrhneme štruktúru, ktorú bude možné udržiavať.

  3. Implementácia a spúšťanie

    Postupne pokrývame scenáre podľa priority a pripravíme dohodnutý spôsob spúšťania – lokálne, na virtuálnych strojoch alebo podľa možností v CI.

  4. Odovzdanie a údržba

    Odovzdáme dokumentáciu, zaškolíme tím a dohodneme pravidlá údržby. Testy môžete spravovať sami alebo ich podľa dohody upravujeme pri nových verziách.

Nástroje a postupy

Nástroje a pracovné postupy volíme podľa konkrétneho riešenia

Pri výbere uprednostňujeme open-source nástroje, ak sú vhodné pre danú službu, vaše prostredie a spôsob prevádzky. Ak riešenie využíva komponent s inou licenciou, platenú cloudovú službu alebo externú infraštruktúru, podmienky a náklady uvedieme v ponuke. Spôsob odovzdania výstupov a vytvoreného kódu dohodneme podľa typu služby.

  • pywinauto

    Open-source základ pre automatizáciu natívnych Windows aplikácií v Pythone. Podporuje UI Automation aj Win32; vhodný backend vyberieme podľa technológie aplikácie.

  • FlaUI

    Voľba, keď potrebujeme robustný prístup k prvkom v zložitom .NET rozhraní. Stavia na .NET a Windows UI Automation a podporuje rôzne technológie rozhrania.

  • Playwright (Electron)

    Playwright podporuje automatizáciu Electron aplikácií, hoci ju dokumentácia označuje ako experimentálnu. Vhodnosť pre konkrétnu aplikáciu preto overíme pilotom.

  • GitHub Actions

    Testy môžeme spúšťať pri vybraných buildoch alebo podľa plánu, aby tím dostával pravidelnú kontrolu kľúčových scenárov bez ručného preklikávania.

Hlbšie k téme

Ak sa chcete dozvedieť viac

Poďme sa pozrieť na váš konkrétny prípad

Stručne nám opíšte, čo chcete preveriť alebo automatizovať, aký systém či proces používate a čo vás dnes najviac obmedzuje. Ozveme sa s návrhom vhodného ďalšieho kroku.