<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.rettungsdienstblog.eu/index.php?action=history&amp;feed=atom&amp;title=Automatizace_v_Pythonu%3A_praktick%C3%BD_pr%C5%AFvodce_pro_za%C4%8D%C3%A1te%C4%8Dn%C3%ADky</id>
	<title>Automatizace v Pythonu: praktický průvodce pro začátečníky - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.rettungsdienstblog.eu/index.php?action=history&amp;feed=atom&amp;title=Automatizace_v_Pythonu%3A_praktick%C3%BD_pr%C5%AFvodce_pro_za%C4%8D%C3%A1te%C4%8Dn%C3%ADky"/>
	<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Automatizace_v_Pythonu:_praktick%C3%BD_pr%C5%AFvodce_pro_za%C4%8D%C3%A1te%C4%8Dn%C3%ADky&amp;action=history"/>
	<updated>2026-09-18T23:28:45Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Rettungsdienst-Wiki</subtitle>
	<generator>MediaWiki 1.37.1</generator>
	<entry>
		<id>https://wiki.rettungsdienstblog.eu/index.php?title=Automatizace_v_Pythonu:_praktick%C3%BD_pr%C5%AFvodce_pro_za%C4%8D%C3%A1te%C4%8Dn%C3%ADky&amp;diff=166118&amp;oldid=prev</id>
		<title>LeathaBeatty2: Die Seite wurde neu angelegt: „Začněte u jednotkových testů. Ty by měly pokrývat všechny klíčové výpočty, validace a rozhodovací logiku. Píšete je ve stejném jazyce jako aplikaci, nejlépe přímo u třídy nebo funkce. Snažte se, aby každý test ověřoval jednu konkrétní věc a nezávisel na databázi, souborech ani síti. Typická chyba je testovat přes HTTP endpoint, když stačí zavolat metodu přímo. Tím testy zpomalíte a znejistíte – pak vám stačí,…“</title>
		<link rel="alternate" type="text/html" href="https://wiki.rettungsdienstblog.eu/index.php?title=Automatizace_v_Pythonu:_praktick%C3%BD_pr%C5%AFvodce_pro_za%C4%8D%C3%A1te%C4%8Dn%C3%ADky&amp;diff=166118&amp;oldid=prev"/>
		<updated>2026-08-21T18:06:58Z</updated>

		<summary type="html">&lt;p&gt;Die Seite wurde neu angelegt: „Začněte u jednotkových testů. Ty by měly pokrývat všechny klíčové výpočty, validace a rozhodovací logiku. Píšete je ve stejném jazyce jako aplikaci, nejlépe přímo u třídy nebo funkce. Snažte se, aby každý test ověřoval jednu konkrétní věc a nezávisel na databázi, souborech ani síti. Typická chyba je testovat přes HTTP endpoint, když stačí zavolat metodu přímo. Tím testy zpomalíte a znejistíte – pak vám stačí,…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Začněte u jednotkových testů. Ty by měly pokrývat všechny klíčové výpočty, validace a rozhodovací logiku. Píšete je ve stejném jazyce jako aplikaci, nejlépe přímo u třídy nebo funkce. Snažte se, aby každý test ověřoval jednu konkrétní věc a nezávisel na databázi, souborech ani síti. Typická chyba je testovat přes HTTP endpoint, když stačí zavolat metodu přímo. Tím testy zpomalíte a znejistíte – pak vám stačí, že se změní jeden JSON klíč, a spadne vám deset testů, které přitom ověřují úplně jinou logiku.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Začněte u pojmenování. Vyhněte se zkratkám jako d, tmp nebo data. Místo toho používejte popisné názvy, které vyjadřují účel: userList, processedOrder, fetchUserProfile. Důležité je také rozlišovat funkce a proměnné: sloveso u funkcí (getUser, sendEmail) a podstatné jméno u hodnot (user, email). Vyhnete se tak nejednoznačnosti a ulehčíte práci ostatním vývojářům.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Proč méně end-to-end testů znamená víc jistoty Na vrcholu pyramidy jsou end-to-end testy, které projíždějí celou aplikaci jako uživatel. Tyto testy jsou pomalé, drahé na údržbu a náchylné na rozbití kvůli maličkostem (např. jiná barva tlačítka). Proto jich pište minimum – jen pro kritické cesty, jako je registrace, nákup nebo přihlášení. Před každým spuštěním se ujistěte, že testovací prostředí je stabilní a data jsou předvídatelná. Vyhněte se používání testovacích čísel karet nebo náhodných e-mailů, které vyžadují ruční zásah. Ideální je, když si testy generují vlastní data a po sobě uklízejí.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když už data máte, přichází na řadu jejich zpracování. Začněte tím, že z odpovědi vytáhnete konkrétní hodnotu – třeba jméno nebo číslo. Většina moderních jazyků má funkce, které převedou JSON na slovník nebo objekt, takže nemusíte parsovat ručně. Otestujte si, co se stane, když API vrátí prázdný výsledek – dobrý kód by měl umět ošetřit i tuto situaci. Doporučuji psát si krátké úryvky kódu, které pak můžete použít jako stavební bloky pro složitější aplikace.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Typická chyba, kterou v praxi vidím, je snaha pokrýt end-to-end testy úplně všechno. Pak se stane, že jeden test trvá dvě minuty a celá sada půl hodiny. Vývojáři čekají na výsledek, ztrácí kontext a testy se stávají spíše brzdou než pojistkou. Řešení je jednoduché: použijte pravidlo 80/15/5 – 80 % jednotkových, 15 % integračních a 5 % end-to-end testů. Většinu funkcionality totiž ověříte rychlými a spolehlivými testy na nižších vrstvách, a pomalé testy si necháte jen na nejdůležitější scénáře.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Dalším krokem je rozdělení kódu do malých funkcí. Pokud funkce dělá více než jednu věc, rozdělte ji. Například místo jednoho bloku, který validuje formulář, ukládá data a posílá notifikaci, vytvořte tři samostatné funkce. Výhodou je snadnější testování a opětovné použití. Pozor ale na přehnané členění – příliš mnoho jednorázových funkcí zbytečně komplikuje čtení. Ideální je najít rovnováhu.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;První reálný požadavek a časté chyby Jakmile máte adresu koncového bodu, pošlete svůj první požadavek metodou GET. Většina API očekává určité parametry, které se předávají buď přímo v adrese, nebo v hlavičce. Nejdřív si přečtěte dokumentaci – i když vás to láká přeskočit, najdete tam povinné parametry a omezení. Typická chyba začátečníků je posílat požadavky bez správných hlaviček, jako je definice formátu. Když server odpoví chybou 400 nebo 404, nepropadejte panice: zkuste si přečíst odpověď, často obsahuje přesné vysvětlení.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Když se řekne automatizace, mnoho lidí si představí složité skripty a hodiny strávené programováním. Opak je pravdou – Python je ideální jazyk pro začátečníky, kteří chtějí zautomatizovat opakující se činnosti, ať už jde o přejmenování souborů, zpracování tabulek nebo stahování dat z webu. Základem je pochopit, že automatizace nemusí být dokonalá – stačí, aby ušetřila čas a eliminovala chyby z nepozornosti.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při návrhu API často stojíte před zásadním rozhodnutím: zvolit REST, nebo GraphQL. Neexistuje univerzální odpověď — obě technologie mají své silné i slabé stránky. Klíčem je pochopit, co vaše aplikace skutečně potřebuje, a podle toho se rozhodnout. V tomto článku se zaměříme na konkrétní situace, kdy se vyplatí sáhnout po té či oné variantě.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Při práci s externími službami, jako je stahování webových stránek, používejte knihovny `requests` a `BeautifulSoup`. Dejte si pozor na limity – mnoho webů omezuje počet požadavků, takže do skriptu vložte pauzy (např. `time.sleep()`) a respektujte soubor `robots.txt`. Automatizace by nikdy neměla narušovat fungování cizích serverů. Podobně u tabulek využijte `pandas`, ale pamatujte, že paměťová náročnost roste s velikostí dat – pro malé soubory stačí `csv` modul.&lt;/div&gt;</summary>
		<author><name>LeathaBeatty2</name></author>
	</entry>
</feed>