Ugrás a tartalomra
Ingyenes1 ó 20 p · 11 lecke

Debugging Like a Pro

A jó hibakeresés megtanulható szokás. Valóban elromlott kódon dolgozunk — egy versenyhelyzeten, egy csendes típuskonverzión, egy memóriaszivárgáson — breakpointokkal, logokkal és felezéssel, végül megírjuk azt a tesztet, ami mindegyik hibát visszatartja.

Az útvonal

  1. Olvasd el a hibát, az egészet

    Stack trace-ek, mit jelent valójában a legfelső frame, és hol nézz először.

    Itt szállsz fel
    20 perc
  2. Hipotézis, aztán felezés

    Szűkítés felezéssel találgatás helyett — a `git bisect`-tel együtt.

    20 perc
  3. A breakpoint jobb a printnél

    Feltételes breakpointok, watch kifejezések, és léptetés úgy, hogy ne veszítsd el a fonalat.

    20 perc
  4. Hagyj magad után egy tesztet

    Ahogy a reprodukcióból az a regressziós teszt lesz, ami visszatartja a hibát.

    20 perc

Bepillantás a tanításba

2. megálló · Hipotézis, aztán felezésMintarészlet

Múlt kedden még működött. Találd meg az elrontó commitot úgy, hogy egyiket sem olvasod el.

git bisect start
git bisect bad                 # right now
git bisect good HEAD~40        # last Tuesday

# Let git drive: it checks out a midpoint, runs your command,
# and halves the range on the exit code. Six steps, not forty.
git bisect run npm test --silent

git bisect reset

Negyven commit hat kérdés. A `bisect run`-nal még válaszolnod sem kell rájuk — a kilépési kód válaszol, miközben kávét főzöl.

Ki vezet

PH
Péter Halász
Staff engineer

Péter úgy magyaráz, ahogy egy jó kolléga a tábla előtt — nincs öncélú szakzsargon, és nincs semmi elrejtve az „ahogy látható” mögé.

Helykitöltő profil