Przejdź do zawartości
Menu główne
Menu główne
przypnij
ukryj
Nawigacja
Strona główna
Ostatnie zmiany
Losowa strona
Pomoc z MediaWiki
Mazovia
Szukaj
Szukaj
Utwórz konto
Zaloguj się
Narzędzia osobiste
Utwórz konto
Zaloguj się
Strony dla anonimowych edytorów
dowiedz się więcej
Edycje
Dyskusja
Edytujesz
Když v týmu začíná chaos, zaveďte větevní model
Strona
Dyskusja
polski
Czytaj
Edytuj
Wyświetl historię
Narzędzia
Narzędzia
przypnij
ukryj
Działania
Czytaj
Edytuj
Wyświetl historię
Ogólne
Linkujące
Zmiany w linkowanych
Strony specjalne
Informacje o tej stronie
Uwaga:
Nie jesteś zalogowany. Jeśli wykonasz jakąkolwiek zmianę, Twój adres IP będzie widoczny publicznie. Jeśli
zalogujesz się
lub
utworzysz konto
, Twoje zmiany zostaną przypisane do konta, wraz z innymi korzyściami.
Filtr antyspamowy.
Nie
wpisuj tu nic!
<br>Kde se hranice rozpadá a jak ji držet Typický problém při růstu je „mockovací peklo". Test má deset mocků, které se navzájem ovlivňují, a při každé změně signatury se opravuje půlka sady. Řešení: pokud potřebujete mockovat víc než dvě až tři závislosti, pravděpodobně testujete špatnou věc. Rozdělte kód tak, aby logika byla oddělená od infrastruktury, a integrační část nechte na malém počtu testů, které projdou reálnou cestou. Pomáhá i to, že mocky nahradíte lokálními implementacemi v paměti — například repozitář v paměti místo databáze. Testy pak zůstanou rychlé a přesto ověří skutečné chování.<br><br>Parametrizace nestačí, pokud se do dotazu vkládají názvy tabulek, sloupců nebo klauzule ORDER BY. Tyto části SQL nelze vázat jako hodnoty. Řešením je bílý seznam povolených hodnot, který se porovnává před sestavením dotazu. Další častá chyba je dynamické skládání IN s seznamem čísel nebo filtrů z formuláře. Pokud se seznam skládá z řetězců ze vstupu, vzniká stejná zranitelnost jako u přihlašovacího formuláře. Stejně tak uložené procedury nejsou automaticky bezpečné, když uvnitř používají EXECUTE s připojeným vstupem.<br><br>Moderní syntaxe je nástroj, ne cíl. Pokud tým používá starší prohlížeče nebo běhové prostředí, je nutná transpilace. Bez ní kód s novými funkcemi spadne. Před nasazením si ověřte, které funkce vaše cílové prostředí podporuje, a nespoléhejte na to, že „to někde funguje". Konzistentní styl, výchozí hodnoty a vědomé používání const odstraní většinu chyb dřív, než vzniknou.<br><br>Nakonec platí, že hranice mezi jednotkovými a integračními testy není dogma, ale nástroj. Pravidelně ji revidujte při každém větším rozšíření modulu. Test, který přestal být jednotkový, [https://isowindows.net/user/MarthaZamora/ rekonstrukce Koupelny krok za Krokem] přejmenujte a přesuňte. Test, který už nic neověřuje, smažte. Udržíte tak sadu rychlou, srozumitelnou a užitečnou i ve chvíli, kdy codebase přeroste původní představy.<br><br>Další častá chyba je testování přes příliš mnoho vrstev. Integrační test, který prochází celou aplikací včetně autentizace, plateb a e-mailů, je pomalý a křehký. Vyplatí se testovat integraci po menších celcích: zvlášť repository proti databázi, zvlášť HTTP handler proti službě. Tyto testy se dají spouštět paralelně a izolovaně, což při růstu codebase rozhoduje o tom, zda sada běží minuty, nebo hodiny. Pokud test potřebuje vlastní databázi, použijte kontejner spuštěný pro testovací běh, ne sdílenou instanci, do které se vám míchají data z jiných testů.<br><br>Základ, který funguje ve většině týmů, stojí na třech typech větví: hlavní větev, vývojová větev a krátkodobé větve pro jednotlivé úkoly. Hlavní větev držte vždy nasaditelnou. Vývojová větev slouží ke spojování hotové práce. Větve pro úkoly pojmenovávejte podle čísla ticketu nebo krátkého popisu, ne podle svého jména. Jméno jako oprava nebo test nikomu nic neřekne a za měsíc je nepoužitelné. Větev vytvářejte vždy z aktuální vývojové větve, ne z té, kterou máte z minulého týdne.<br><br>Nejčastější chyba je dlouho otevřená větev. Čím déle ji držíte stranou, tím bolestivější bude sloučení. Slučujte průběžně, ideálně každý den nebo dva. Před sloučením si stáhněte změny z vývojové větve a vyřešte konflikty u sebe, ne v hlavní větvi. If you cherished this information and you would like to obtain more information with regards to [https://crabcodex.com/index.php/Kdy%C5%BE_commit_zpr%C3%A1va_%C5%A1et%C5%99%C3%AD_%C4%8Das_p%C5%99i_hled%C3%A1n%C3%AD_vin%C3%ADka_zm%C4%9Bny dokončení interiéRu] kindly pay a visit to the website. Konflikt neřešte tím, že přepíšete cizí kód svým. Podívejte se, co změna druhého sledovala, a spojte obě verze tak, aby fungovaly společně.<br><br>Častou chybou je přílišné mockování. Pokud podvrhnutá závislost vrací něco jiného než skutečná implementace, test sice projde, ale v [https://Lerablog.org/?s=provozu%20k%C3%B3d provozu kód] selže. Držte se tvaru dat, který odpovídá realitě. Další pastí je testování interních detailů – například kolikrát byla funkce zavolána. Radši ověřujte výsledné dispatchy a stav, který z nich plyne. Testy pak přežijí refaktoring.<br><br>Měřte čtyři věci: jak často nasazujete, jak dlouho to trvá, jak často se nasazení pokazí a jak rychle se z toho dostanete. Bez čísel se hádáte o dojmech. Zaveďte jednoduchý přehled, který vidí celý tým, a sledujte trend, ne jednotlivé hodnoty. Zlepšení poznáte tak, že se snižuje čas od nápadu k produkci a roste podíl změn, které projdou bez opravy.<br><br>Většina týmových problémů s Gitem nevzniká kvůli neznalosti příkazů, ale kvůli tomu, že si každý člen týmu vymyslel vlastní pravidla. Jeden commitoval přímo do main, druhý posílal pull requesty z větve, kterou už dávno smazal, třetí force-pushoval do sdílené větve. Než začnete řešit nástroje, dohodněte se na jednom větevním modelu a napište ho do README. Musí být krátký, konkrétní a vynutitelný. Pokud ho nelze vysvětlit do pěti minut, je příliš složitý a tým ho bude obcházet.<br>
Opis zmian:
Wszelki wkład na Mazovia może być edytowany, zmieniany lub usunięty przez innych użytkowników. Jeśli nie chcesz, żeby Twój tekst był dowolnie zmieniany przez każdego i rozpowszechniany bez ograniczeń, nie umieszczaj go tutaj.
Zapisując swoją edycję, oświadczasz, że ten tekst jest Twoim dziełem lub pochodzi z materiałów dostępnych na warunkach
domeny publicznej
lub kompatybilnych (zobacz także
Mazovia:Prawa autorskie
).
PROSZĘ NIE WPROWADZAĆ MATERIAŁÓW CHRONIONYCH PRAWEM AUTORSKIM BEZ POZWOLENIA WŁAŚCICIELA!
Anuluj
Pomoc w edycji
(otwiera się w nowym oknie)
Przełącz ograniczenie szerokości strony