<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.it-core.eu/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Eve04283833</id>
	<title>IT-Core - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.it-core.eu/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Eve04283833"/>
	<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Special:Contributions/Eve04283833"/>
	<updated>2026-11-06T12:04:55Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=Testov%C3%A1n%C3%AD_redux_reduktor%C5%AF_a_asynchronn%C3%ADch_akc%C3%AD_bez_integra%C4%8Dn%C3%ADho_prost%C5%99ed%C3%AD&amp;diff=141364</id>
		<title>Testování redux reduktorů a asynchronních akcí bez integračního prostředí</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=Testov%C3%A1n%C3%AD_redux_reduktor%C5%AF_a_asynchronn%C3%ADch_akc%C3%AD_bez_integra%C4%8Dn%C3%ADho_prost%C5%99ed%C3%AD&amp;diff=141364"/>
		<updated>2026-08-21T18:23:06Z</updated>

		<summary type="html">&lt;p&gt;Eve04283833: Created page with &amp;quot;Časté chyby, které vás připraví o smysl testů První typická chyba je testování implementace místo chování. Když testujete, že funkce volá jinou funkci s určitými argumenty, svazujete si ruce pro budoucí refaktoring. Test by měl selhat pouze tehdy, když se změní výsledek, ne když se změní vnitřní struktura kódu. Druhá častá chyba je psaní testů, které projdou i bez testované funkce. Typicky jde o testy, které kontrolují jen to, že...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Časté chyby, které vás připraví o smysl testů První typická chyba je testování implementace místo chování. Když testujete, že funkce volá jinou funkci s určitými argumenty, svazujete si ruce pro budoucí refaktoring. Test by měl selhat pouze tehdy, když se změní výsledek, ne když se změní vnitřní struktura kódu. Druhá častá chyba je psaní testů, které projdou i bez testované funkce. Typicky jde o testy, které kontrolují jen to, že funkce nevyhodí výjimku, ale nekontrolují návratovou hodnotu. Takový test je k ničemu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pro lepší izolaci můžete využít knihovny jako Redux Mock Store, které vám poskytnou jednoduché rozhraní pro testování akcí a thunků. Nemusíte ale hned sahat po dalších závislostech – stačí vám obyčejný objekt s metodami. Testy pak budou rychlé, deterministické a snadno udržovatelné. Tento přístup se hodí i pro projekty, kde nechcete zatěžovat build dalšími balíčky.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když se řekne REST API v Node.js, většina vývojářů sáhne po frameworku Express. Není to náhoda – Express je minimalistický, dobře zdokumentovaný a díky své flexibilitě vám umožní postavit API přesně podle potřeb. Než ale začnete psát první endpoint, ujasněte si, co vlastně chcete, aby vaše API dělalo. Bez jasné definice zdrojů a jejich vztahů snadno skončíte u nepřehledného kódu, který se bude těžko udržovat.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Typickou chybou je spoléhat na skutečné API volání nebo na globální store. Takový test je pomalý a náchylný na selhání z důvodu síťových výpadků. Další častou chybou je zapomenout na asynchronní povahu thunku – test skončí dřív, než thunk stihne dokončit. Řešením je použít async/await nebo zpětné volání, které počká na dokončení. V neposlední řadě se vyvarujte testování reducerů přes store – to je integrační test, který nepotřebujete pro pokrytí čisté logiky.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nejčastější chyby při odhadování času Jednou z nejrozšířenějších chyb je ignorování režie – schůzky, e-maily, code review, testování, nasazení nebo ladění. Zkušený vývojář často stráví jen polovinu pracovní doby samotným psaním kódu. Pokud tuto režii nezapočítáte, bude váš odhad systematicky nízký. Doporučuji přidat k čistému odhadu rezervu alespoň 20–30 %, a to nejen na režii, ale i na chyby, které se objeví až během integrace.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dalším častým problémem je odhadování „ve vzduchu&amp;quot; bez znalosti existujícího kódu. Pokud neznáte architekturu, použité knihovny nebo kvalitu testů, je váš odhad jen tipování. Před odhadem si projděte relevantní části kódu, podívejte se na podobné úkoly z minulosti a zjistěte, jak dlouho reálně trvaly. Historická data z vašeho týmu jsou nejcennějším zdrojem – pokud je nemáte, začněte si je zaznamenávat.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Třetí oblastí je automatizace webových úkonů, ale ne ve smyslu procházení stránek proti pravidlům. Můžete si například napsat skript, který se přihlásí na váš účet, stáhne potřebná data a uloží je do souboru. Tady ale platí přísné pravidlo: vždy respektujte podmínky použití dané služby a mějte na paměti, že nadměrné automatické dotazy mohou vést k zablokování vaší IP adresy. Dobré je zahrnout do skriptu prodlevy mezi jednotlivými požadavky, abyste server zbytečně nezatěžovali.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jak namockovat asynchronní závislosti a ověřit volání Při testování thunků se často setkáte s nutností ověřit, že akce byly dispatchovány ve správném pořadí. Použijte pole, do kterého zaznamenáváte volání dispatch. Po provedení thunku porovnáte obsah pole s očekávanou sekvencí. Pokud thunk používá getState, vraťte z ní předpřipravený objekt stavu. Vyhněte se testování více thunků najednou – každý test by měl být izolovaný, aby byl snadno identifikovatelný problém.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Nezapomínejte ani na bezpečnostní nástroje, jako je Find Usages nebo Go to Declaration. Tyto funkce vám pomohou rychle zjistit, kde všude se daný kód používá, a to dříve, než začnete s úpravami. Často se stává, že při ručním refaktorování přehlédnete některé volání – vestavěné nástroje vám ukáží kompletní seznam a vy se vyhnete nepříjemným překvapením. Pokud si nejste jisti, použijte před větším zásahem verzování a porovnejte rozdíly.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Pokud jde o strukturu projektu, neházejte všechno do jednoho souboru. Rozdělte kód na moduly – oddělte routes, controllers a služby pro práci s daty. Tím získáte přehlednost a usnadníte si testování. Pro menší API stačí i tři soubory, ale pro větší projekty je dobré zavést složkovou strukturu. Důležité je taky myslet na CORS – pokud vaše API budou volat prohlížeče z jiné domény, musíte povolit příslušné hlavičky, jinak požadavky skončí chybou.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Jak efektivně využít další funkce pro úpravu struktury kódu Kromě přejmenování se vyplatí používat nástroje pro extrakci metod. Pokud narazíte na příliš dlouhou funkci, označte blok kódu a zvolte akci Extract Method. IDE samo navrhne parametry a návratovou hodnotu, čímž eliminuje chyby při ručním sestavování signatury. Podobně můžete extrahovat proměnné, konstanty nebo celé třídy. Tímto způsobem získáte čistší strukturu bez zbytečného opisování.&lt;/div&gt;</summary>
		<author><name>Eve04283833</name></author>
	</entry>
	<entry>
		<id>https://www.it-core.eu/wiki/index.php?title=User:Eve04283833&amp;diff=141363</id>
		<title>User:Eve04283833</title>
		<link rel="alternate" type="text/html" href="https://www.it-core.eu/wiki/index.php?title=User:Eve04283833&amp;diff=141363"/>
		<updated>2026-08-21T18:23:03Z</updated>

		<summary type="html">&lt;p&gt;Eve04283833: Created page with &amp;quot;Někdo, kdo dílnou i obývákem žije už dlouho. Sdílím zde, jak skloubit funkčnost s teplem domova. Nejraději popisovat postupy krok za krokem.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Někdo, kdo dílnou i obývákem žije už dlouho. Sdílím zde, jak skloubit funkčnost s teplem domova. Nejraději popisovat postupy krok za krokem.&lt;/div&gt;</summary>
		<author><name>Eve04283833</name></author>
	</entry>
</feed>