Jak testovat mobilní aplikace: osvědčené postupy a nástroje
Indexy nejsou všelék a často narazíte na problém, že dotaz index nepoužije. Důvodem bývá použití funkce na sloupci v podmínce WHERE, typová konverze nebo nevhodný formát porovnání. Například dotaz WHERE DATEPART(year, created_at) = 2024 znemožní použití indexu, zatímco podmínka WHERE created_at >= '2024-01-01' AND created_at Jednou z častých pastí je používání OR v podmínkách, které znesnadňuje optimalizátoru volbu indexu. Pokud je to možné, nahraďte OR pomocí UNION ALL na dvě samostatné podmínky. Podobně se vyhněte používání NOT IN, které bývá pomalejší než NOT EXISTS. Důležité je také sledovat statistiky tabulek – pokud se často mění data, spouštějte pravidelně aktualizaci statistik, aby optimalizátor měl přesné informace o rozložení hodnot. V neposlední řadě se vyplatí pečlivě testovat dotazy na reálných datech, ne na malé testovací sadě.
Prvním praktickým krokem je instalace Dockeru. Na Linuxu obvykle použijete balíčkovací nástroj vaší distribuce, na Windows a macOS stáhnete instalační program z oficiálních stránek. Po instalaci si ověřte funkčnost příkazem docker --version. Hned poté si vytvořte první kontejner: docker run hello-world. Tento příkaz stáhne malý testovací obraz a spustí ho. Pokud vidíte uvítací hlášku, máte vyhráno. Nezapomeňte, že Docker na Linuxu vyžaduje práva roota – buď použijte sudo, nebo přidejte svého uživatele do skupiny docker, abyste nemuseli psát sudo pokaždé.
Další praktický tip: sledujte si dobu běhu jednotlivých kroků. Pokud se pipeline prodlužuje, může to být způsobeno tím, že máte příliš mnoho kroků, které by šly paralelizovat. Použijte klíč jobs s vhodnými závislostmi (needs), abyste oddělili sestavení od testování a nasazení. Mějte na paměti, že každý job běží v čistém prostředí, takže pokud potřebujete přenést artefakt z jednoho jobu do druhého, musíte použít akci upload-artifact a download-artifact.