Unit-Tests jsou mocný nástroj pro vývojáře, jak zajistit kvalitu jejich kódu. Umožňují ti testovat funkce izolovaně a zajistit, že fungují tak, jak mají. V této příručce ti ukážu, jak napsat svůj první Unit-Test v Python. Naučíš se nejen základy unit-testování, ale také, jak efektivně tvořit své testy.
Nejdůležitější poznatky
- Unit-Tests pomáhají odhalit chyby včas a zajišťují, že tvé funkce pracují, jak mají.
- Python knihovna unittest poskytuje jednoduchý způsob, jak implementovat testy.
- Efektivní testy zahrnují jak pozitivní, tak negativní scénáře a kontrolují datové typy návratových hodnot.
Podrobný návod
Krok 1: Příprava tvého projektu
Nejdříve potřebuješ Python soubor, ve kterém je definována tvoje funkce. V našem příkladu pojmenujeme soubor preisberechnung.py. Zde definuješ funkci get_verkaufspreis, která převezme nákupní cenu a přidá marži.

Krok 2: Vytvoř soubor pro své Unit-Tests
Poté vytvoř nový soubor, který bude obsahovat testy pro tuto funkci. Nazvěme tento soubor preisberechnung_test.py. Zde budeš pracovat s modulem unittest.
Abychom mohli framework používat, importuj ho na začátek svého souboru:

Krok 3: Definuj testovací třídu
Testovací třída by měla dědit z unittest.TestCase. To ti umožní organizovat všechny testy ve strukturované formě. Pojmenuj třídu jako PreisberechnungTest, aby bylo jasné, co se testuje.

Krok 4: Napiš své testy
Teď je čas napsat skutečné testy. Začni testem, který zkontroluje, zda návratová hodnota get_verkaufspreis má očekávaný typ (float):

Krok 5: Testuj neplatné vstupy
Je také důležité testovat neplatné vstupy. Přidej test, který zkontroluje, zda funkce vyhazuje výjimku při neplatných vstupech, jako je None nebo nějaký String:

Krok 6: Spouštění testů
Abychom spustili své testy, můžeme to udělat buď přes terminál, nebo přímo ve své IDE. Pokud používáš terminál, spusť následující:
Ve své IDE, jako je PyCharm, můžeš použít konfiguraci pro spuštění, abys provedl testy.

Krok 7: Kontrola výsledků
Pokud úspěšně proběhnou testy, obdržíš výstup, který ti ukáže, zda všechny testy byly úspěšné. Zelený výsledek znamená, že tvůj kód funguje, jak bylo zamýšleno.
Krok 8: Rozšíření testů
Kromě základních testů můžeš přidat i další relevantní scénáře, aby ses zvýšil zabezpečení kódu. Mysli na testování jak pozitivních, tak negativních případů, abys zajistil, že tvá logika funguje ve všech situacích.

Souhrn - První Unit-Test s Pythonem: Základy a implementace
Psaní Unit-Testů je důležitá dovednost, která ti pomůže udělat tvůj kód spolehlivým. V této příručce jsi se naučil, jak napsat první Unit-Test v Pythonu, od definice funkce po provádění a kontrolu výsledků. Důkladným testováním se výrazně zlepší udržovatelnost tvého kódu a problémy se odhalí včas.
Často kladené otázky
Jak vytvořím Unit-Test v Pythonu?Abych vytvořil Unit-Test v Pythonu, vytvoř testovací třídu, která dědí z unittest.TestCase, a piš testy jako metody této třídy.
Proč bych měl psát Unit-Testy?Unit-Testy pomáhají včas identifikovat chyby a zajišťují, že tvé funkce pracují, jak má.
Jak spustím Unit-Testy?Můžeš spustit Unit-Testy přes terminál s příkazem python -m unittest [název_souboru] nebo přímo ve své IDE.
Jaké jsou dobré praktiky pro Unit-Testy?Dobrou praxí je zahrnovat jak pozitivní, tak negativní testovací scénáře a kontrolovat datové typy. Také pravidelnost provádění je důležitá, aby bylo možné okamžitě ověřit změny v kódu.