Testeři v agentuře zodpovídají za to, aby aplikace, kterou koncový uživatel obdrží, měla uživatelsky přívětivé rozhraní a fungovala jak má. To například zahrnuje plánování a spouštění testů funkčnosti, sledování chyb, kompatibilitu, instalaci, výkon a mnoho dalšího. Tester se tak neobejde bez praktických pomocníků – softwarových nástrojů (různých programů a utilit). V tomto blogu představím několik nástrojů, které u nás v Ackee při testování aplikací používáme.

1. Firebase App Distribution

Vývojáři bezpochyby vytváří aplikace pro koncové uživatele. Než ji ale začneme distribuovat cílovým uživatelům, aplikace musí projít důkladným testováním zkušenými testery. Firebase App Distribution dokáže poskytnout ucelený pohled na beta testování AndroidiOS a testerovi umožňuje snadný a efektivní přístup k aplikacím a jejich verzím prostřednictvím Správce aplikací. Počet uživatelů, kteří mohou aplikaci testovat, navíc není nijak omezen. Tento nástroj pro testování kromě toho usnadňuje porovnávání a správu více beta verzí aplikace. V praxi se samozřejmě ještě můžete setkat i s nástroji TestFlight nebo Google Play Internal Testing, ale tyto tooly mají své nevýhody, kdy aplikace musí projít přes basic review a testování je povoleno pouze pro menší počet beta testerů.

2. Firebase Crashlytics

Tento nástroj pro testování aplikací slouží pro automatický sběr pádů a analytických informací s nimi spojených. Při práci nám umožňuje získat skutečné a detailní informace o stavu uživatele. Vzhledem k tomu, že pro testery může být někdy obtížné najít, kde přesně systém selhává, Crashlytics je ideálním nástrojem pro analýzu, hlášení, organizaci a správu selhání. Uživatelské logy nám usnadňují práci, jelikož z nich tester může vysledovat, kde se problém odehrál, a při založení bugu tím usnadnit vývojáři další řešení problému.

3. Screenshoter

Posvátnou povinností odpovědného testera je včas přiložit k bug reportu vysvětlující snímek obrazovky či záznam. Tímto způsobem usnadňujeme komunikaci s programátory a můžeme se tak zbavit nutnosti komplikovaně vysvětlovat problém. K dispozici je řada typických nástrojů pro screenshotování, ale u nás v Ackee za tímto účelem používáme svůj vlastní projekt Screenshoter. Ten našim testerům umožňuje rychlou synchronizaci snímku ze zařízení a vytvoření linku, který stačí přidat do popisu k ticketu. AckeeScreenshoter k němu navíc přibalí i další analytické informace, jako je typ zařízení, verze aplikace, a další.

4. BloomRPC/Postman

Schopnost pracovat s API testerovi lépe umožní porozumět bugům a přesněji popsat chyby, ke kterým může v aplikaci dojít. U některých projektů je například důležité provádět testy s velkým počtem různých vstupních dat oddělených od samotného testovacího kódu. Na úrovni takových požadavků se testování děje velmi rychle a s mnohem vyšší spolehlivostí.

Při testování API používáme tyto dva nástroje, které jsou užitečné nejen pro testera, ale i pro celý vývojový tým. Nabízí poměrně rozsáhlé možnosti: V Postmanovi můžu připravovat data pro testování a provádět je a také vytvářet testovací entity (uživatelé, účty, produkty atd.). Tento nástroj poskytuje také historii requestů a může být nakonfigurován tak, aby si pamatoval responses. Postman také umožňuje psát testy na responses a spouštět je automaticky. BloomRPC oproti tomu nemá tolik funkcionalit, ale má jasné GUI, snadnou instalaci a pohodlně se používá k odesílání requestů pro gRPC. Pracuje s protokoly a na jejich základě zpracovává data s API gRPC.

5. Qase

Při práci se tester neobejde také bez věrných pomocníků – testovacích scénářů. Na větších projektech nám usnadňují práci a nahrazují tak dokumentaci, jelikož zahrnují potřebný sled akcí zaměřených na kontrolu jakékoli funkce a popis, jak dojít ke skutečnému výsledku (např. registrace uživatele). Před zahájením testování jsou testy formálně popsány ve formě scénářů.

S tímto přístupem jsou pokryty veškeré funkcionality a části aplikace, což nám umožňuje jasně definovat dobu pro testování, mít větší svobodu, vyvinout nové testovací techniky a strategie, a tím proniknout hlouběji do produktu. Je to i velice efektivní způsob onboardingu, pokud se k projektu připojí nový tester. V Ackee používáme Qase, který je moderním nástrojem pro správu test casů kombinující manuální i automatizované testování aplikací. Pro automatizované testování umožňuje posílat výsledky autotestů a jejich agregaci do reportů.

Závěr

Jelikož testování je neopomenutelná součást procesu vývoje aplikací, zmíněné nástroje představují skvělý způsob, jak si tester může usnadnit práci a uživateli následně používání aplikace. Nejsilnější zbraní testera ale zůstává touha se rozvíjet a rozšiřovat si obzory, praktické zkušenosti a profesionální zvídavost. 🙂

Máte zájem o spolupráci? Pojďme to probrat osobně!

Napište nám >