<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://dustyways.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=AlanDry95193238</id>
	<title>Dusty Ways: Rebirth - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://dustyways.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=AlanDry95193238"/>
	<link rel="alternate" type="text/html" href="https://dustyways.wiki/index.php?title=Special:Contributions/AlanDry95193238"/>
	<updated>2026-08-30T09:35:38Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.45.1</generator>
	<entry>
		<id>https://dustyways.wiki/index.php?title=Manu%C3%A1ln%C3%AD_testov%C3%A1n%C3%AD_vs._automatizace:_co_zvolit_pro_mobiln%C3%AD_aplikace%3F&amp;diff=226292</id>
		<title>Manuální testování vs. automatizace: co zvolit pro mobilní aplikace?</title>
		<link rel="alternate" type="text/html" href="https://dustyways.wiki/index.php?title=Manu%C3%A1ln%C3%AD_testov%C3%A1n%C3%AD_vs._automatizace:_co_zvolit_pro_mobiln%C3%AD_aplikace%3F&amp;diff=226292"/>
		<updated>2026-08-29T02:43:44Z</updated>

		<summary type="html">&lt;p&gt;AlanDry95193238: Created page with &amp;quot;Když už máte první obrazovku, začněte s životním cyklem aktivity. Mnoho začátečníků dává veškerou logiku do metody onCreate, což je chyba, protože při otočení zařízení se aktivita znovu vytvoří a vy ztratíte stav. Naučte se používat ViewModel a LiveData, i když to ze začátku vypadá složitě. Bez toho narazíte na situace, kdy aplikace při změně orientace ztratí načtená data a uživatel musí všechno dělat znovu. Často se to st...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Když už máte první obrazovku, začněte s životním cyklem aktivity. Mnoho začátečníků dává veškerou logiku do metody onCreate, což je chyba, protože při otočení zařízení se aktivita znovu vytvoří a vy ztratíte stav. Naučte se používat ViewModel a LiveData, i když to ze začátku vypadá složitě. Bez toho narazíte na situace, kdy aplikace při změně orientace ztratí načtená data a uživatel musí všechno dělat znovu. Často se to stává při načítání ze sítě – zobrazíte loading, pak otočíte telefon a místo dat vidíte prázdnou obrazovku.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Testovací pyramida je jednoduchý model, který popisuje ideální rozložení testů do tří vrstev: jednotkové (základna), integrační (střed) a end-to-end testy (vrchol). Čím nižší vrstva, tím rychlejší, levnější a stabilnější testy by měly být. Pokud se tato struktura rozpadne, místo ulehčení práce vám testy začnou aktivně škodit — prodlužují zpětnou vazbu, jsou křehké a vyžadují příliš údržby. Tento text se zaměří na konkrétní kroky, jak pyramidu správně postavit, a na nejčastější chyby, které ji rozbíjejí.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Druhým krokem je nastavit si projekt správně hned od začátku. Vytvořte si prázdný projekt s prázdnou aktivitou, ne s šablonami, které generují zbytečný kód. Už od prvního dne si zvykněte na verzovací systém, ideálně git, a každou funkční změnu commitujte. Když to neuděláte, po třech dnech práce narazíte na chybu, kterou nebudete schopni vrátit zpět, a to vás bude stát hodiny hledání. Důležité je také používat emulátor – fyzické zařízení je sice rychlejší, ale emulátor vám umožní testovat různé velikosti obrazovek a systémové verze.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Zkontrolujte si také počet přesměrování. Každé přesměrování znamená další komunikaci mezi prohlížečem a serverem, a tím i zpoždění. Ujistěte se, že odkazujete přímo na finální adresu, a nepoužívejte zbytečné řetězce, kdy se stránka přesměruje třikrát za sebou. Stejně tak se vyhněte velkému množství pluginů, které do stránky vkládají vlastní skripty. Jeden špatně napsaný doplněk dokáže zpomalit celý web.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec si dejte pozor na to, abyste nekopírovali kód bez porozumění. Často se stává, že někdo vezme ukázku z fóra, která sice funguje, ale dělá něco úplně jiného, než potřebujete. Vždy si každý řádek přečtěte a zkuste ho vysvětlit nahlas. Pokud to nejde, vraťte se k dokumentaci a zjistěte, co daná třída nebo metoda dělá. Vývoj pro Android je běh na dlouhou trať, ale když začnete s pevným základem a budete se vyhýbat typickým nástrahám, tak první verzi aplikace dokončíte mnohem dřív, než byste čekali.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Další častý problém je testování na nesprávném zařízení. Ne každý má nejnovější model, takže otestujte aplikaci na starším zařízení s menším rozlišením a pomalejším procesorem. Zkuste také změnit velikost písma v systémovém nastavení nebo zapnout režim úspory baterie. Tyto faktory dokážou rozbít layout, který na vývojářském zařízení vypadá perfektně. Pozor i na orientaci obrazovky – přepnutí z portrétu na šířku by nemělo resetovat stav aplikace nebo ztratit data z formuláře.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Základním krokem je začít u jednotkových testů. Každá třída nebo funkce by měla být pokryta testy, které ověřují logiku izolovaně od okolí. To znamená používat falešné objekty (mocks, stubs) pro databáze, soubory nebo síťové služby. Dbejte na to, aby testy nebyly závislé na pořadí spuštění, na čase ani na náhodných hodnotách. Pokud jednotkový test občas selže bez změny kódu, je to varovný signál — test není deterministický a v pyramidě se chová jako časovaná bomba. Většina testů (60–70 %) by měla patřit právě sem.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Automatizace jen tam, kde dává smysl Automatizované testy jsou skvělé pro opakované kontroly, ale nevyplatí se je psát na všechno. Základní pravidlo: automatizujte to, co je stabilní a co se často mění jen v detailech. Například testování přihlašovacího formuláře, validace polí nebo načítání seznamů. Naopak nespouštějte automatizaci na složité gesta, animace nebo testy závislé na aktuální poloze zařízení. Tyto scénáře jsou náchylné k falešným výsledkům a jejich údržba stojí víc času, než ušetří. Při psaní automatizovaných testů se vyhněte závislosti na konkrétních texturách nebo barvách – stačí drobná změna designu a test spadne, i když funkcionalita funguje.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nakonec si nastavte proces zpětné vazby mezi testery a vývojáři. Každý nález by měl obsahovat kroky k reprodukci, očekávané a skutečné chování a screenshot či video. Bez toho se chyby ztrácejí nebo se opraví jen část problému. Pravidelně procházejte hlášení a přiřazujte prioritu podle dopadu na uživatele. Pokud nemáte vyhrazený tým testerů, určete, kdo z vývojářů převezme roli QA alespoň na část úvazku. Cílem není najít všechny chyby, ale ty, které by mohly poškodit důvěru uživatelů nebo vést k finanční ztrátě.&lt;/div&gt;</summary>
		<author><name>AlanDry95193238</name></author>
	</entry>
	<entry>
		<id>https://dustyways.wiki/index.php?title=User:AlanDry95193238&amp;diff=226291</id>
		<title>User:AlanDry95193238</title>
		<link rel="alternate" type="text/html" href="https://dustyways.wiki/index.php?title=User:AlanDry95193238&amp;diff=226291"/>
		<updated>2026-08-29T02:43:43Z</updated>

		<summary type="html">&lt;p&gt;AlanDry95193238: Created page with &amp;quot;Autor blogu praktickým bydlením žije už dlouho. Píšu o tom, jak skloubit funkčnost s teplem domova. Nejraději ukazovat chytrá řešení, která zvládne každý.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Autor blogu praktickým bydlením žije už dlouho. Píšu o tom, jak skloubit funkčnost s teplem domova. Nejraději ukazovat chytrá řešení, která zvládne každý.&lt;/div&gt;</summary>
		<author><name>AlanDry95193238</name></author>
	</entry>
</feed>