Hogyan kezdjük el írni vizsgálatok a 10 10 perces lépésekben

Hadd találjam ki: Egyetért azzal, hogy az írás tesztek - ez jó. Ez növeli a rendszer megbízhatóságát, gyorsítja a fejlődés, jó teszt lefedettség támogató projekt könnyű és kellemes, TDD - ez mind az ideális fejlődési folyamatot. De van a projektben. Azaz, ez jó, de sajnos most a sok munka - elzáródást. Egy csomó feladatot egyedül kritikus hibák - a két tucat plusz sürgősen kell befejezni ezt a modult, és még írni, hogy az ügyfél ... úgy, hogy a vizsgálatok valószínűleg lesz csavarni a végén, ha az idő is. Vagy a következő tervezetet. Nem, nos, ott csak könnyebb lesz. A legvalószínűbb.

Hogyan tudja a helyzetet?

Hogyan kezdjük el írni vizsgálatok a 10 10 perces lépésekben
Tehát - mindez ostobaság. IT - végtelen, mint az univerzum, a sok munka mindig lesz. Akkor sem indul írás tesztek most, vagy nem teheti meg soha. Már lefirkantotta rövid tervet, hogy hogyan intézd 10 lépésben lépés szerint egy nap, napi 10 perc lépés. És amikor azt mondom, „10 perc alatt” nem azt értem „3 és fél óra” és nem „is, hogy mennyi az idő, egyre jobban”, nevezetesen, 600 másodperc. Ha nem egy nap a szabad ideje 600 másodperc - gyorsan változik a projekt munka, foglalkozás, lakóhely szerinti ország (aláhúzás), mert ez nem az élet és a kemény munka néhány. Menjünk.

1. Válassza ki a keretet tesztelés
2. Az írás Hello világ!

Írja Helló, világ! nekünk egy szelet tortát. Például, a C ++.

És most két dolgot.
Először végezze generációs kimenő szövegben külön funkciókat. Igen, kettő. Ez biztosítja, hogy aztán meg kell vizsgálni.

Hello világ! miután újratervezés

Másodszor, akkor be írásbeli funkció valahol a fájlt. Attól függően, hogy a megközelítés és a nyelvet használják könnyen külön kódfájlokhoz vagy könyvtárban. Ez biztosítja, hogy ezek a funkciók akkor nevezzük a teszteket.
Mi lesz a következő:

3. Csatlakoztassa keret Helló világ!
4. Vizsgált a lehetőségeket a keret

Először azt kell kideríteni:

  • Hogyan írjunk egy egység teszt
  • Hogyan fut a unit tesztek

Ezek a kérdések általában válaszolt minden ugyanabban a cikkben, én beszéltem fent. Ne menj közvetlenül a pusztaságba a keret. Kezdjük az egyszerű vizsgálatokat, ellenőrizze az egyszerű dolgokat. Olyan lenne, mint a sport - nem csak tépje a nagy tömeg, meg kell először tegye a megfelelő technika.

Itt például, egy pár tesztet a Hello világ! A fent említett Google teszt:

5. akasztja a kerettervezet

Azt már tudjuk, hogyan kell csatlakoztatni a keret a projekthez. Ne feledje, hogy nem №3 lépés? Minden kiderült. Most csináljuk a harci a projekt. Tedd az összes szükséges fájlt keretében jelenleg SVNGitTFSchego-at-you-ott. Tegyen egy próbát projekt. Csatlakozhat hozzá keret. Fordítsa a szerelvényt a vizsgálati projekt a termék összeszerelés folyamatát. Ellenőrizzük a szerelvény a hibakereső és felszabadulását konfigurációkat. Komitnite teszt projekt indul szerelvényt a build szerveren. Mindent meg kell rendben. Ne terhelje túl a kollégák beköszönte a vizsgált projekt - az első helyen, akkor nem tört semmi, másrészt, hogy megmutassák, hogy te is, nincs semmi.

6. Tesztelés valami egyszerű

Egyébként ez volt ebben a szakaszban gyakran jön a szkeptikusok a megvilágítás. Hirtelen kiderül, hogy a legegyszerűbb teszt a legalapvetőbb funkciókat - hirtelen összeesett. Mi mászni a kódot - és hirtelen talál valami ilyesmit

És kiderül, hogy az alap kód egyszerűen meghívja ezt a funkciót, amíg az ilyen érvek, hogy minden rendben volt, de bármelyik pillanatban megváltozhat.

7. Vizsgálati valami bonyolultabb
8. Az írás a vizsgálat a hiba

Mint általában, nem a munkát egy hibát? Veszel azt a bugtracker, akkor próbálja játszani, ha nem - vissza a tesztelő, ha kiderül, a hibakeresés a megértéséhez a helyét, talál egy darab kódot a hiba, fix, tesztelés, adnak a tesztelő. Kitűnő. Most próbálja meg a munka a következő hiba lépések között „hibát találni” és „kijavítja”, hogy adjunk még egy lépést - írja egy tesztet a hibát. Úgy, hogy ő esett az aktuális kódot. Ez egy óriási izgalom, javítsa a kódot - és nem megy, hogy teszteljék a kezét, és elkezd esni néhány perce tesztet, és a „sikeres” a kimeneti. Emellett esztétikai élvezet, ez a teszt adható a tesztelő, és használja azt később regressziós tesztelés (és több - tesztelésére a termék mellékágai, a projekt a „terepen”, stb.) Persze, nem minden és nem mindig lehetséges, hogy teszteljék, nehéz lehet a UI, egy cross-browser, multi-threading. Ne zavarja, ha a dolgozatírás elviszi sok-sok órán át. A végén, mert a technológia célja, hogy az élet könnyebb, hogy ne tánc ők fütyülnek.

9. Először TDD

Mint általában, a munkahelyi nézi az új funkciók? Valószínűleg, ha először gondol. Akkor tervezése, amit csinálsz - kenhető interfész nevek, osztályok, majd a nevét módszerek, töltse ki a végrehajtás, futás, hibakeresés. Ok, akkor nem szükséges megváltoztatni szinte semmi. Csak abban a pillanatban, amikor már van interfészek, osztályok és metódusok nevét, de még nem azok végrehajtására - írja tesztek számukra. Szerény - úgynevezett módszer - ellenőrizze az eredményt. Figyeljük meg, hogy még ebben a fázisban akkor veszi észre logikátlansága néhány név, vagy -többletét érveket módszerek felesleges vagy hiányzó függőségek, stb Ebben most igaz ugyan - szinte értéktelen (mert a végrehajtása még nem írt). Csípett építészet, kész írás tesztek indított - láttam egy csomó sikertelen vizsgálatok. Ok, így is kell lennie. Írtunk egy végrehajtási indítsa el a tesztet - látta a legtöbbjük, hogy nem sikerült kijavítani a hibát, egy sikeres befejezése az összes teszt - kitűnő, ez kész. Úgy érzi, valamint volt az, amit az erkölcsi elégedettség van? Ez némileg emlékeztet a szórakozás, hogy néhány achivki a játékban. És miért? És mivel lehet mérni! „A kód halad 18 tesztek teszt lefedettség 90% -os” - hangzik a hűvösebb, sokkal hűvösebb, mint: „Nos, szeretnék egy funkció alkalmazását, azt dugta egy kicsit, úgy tűnik, nem esik.” Ez adja meg a jogot, hogy büszke lehet. Hazafelé - és világosan megérteni, hogy egy szép napon, hogy hasznos, ez a „valami” mérhető, kézzelfogható, valóságos.

10. csavarozva futó tesztek CI-szerver

A vizsgálatok sok értelme, hacsak nem futnak. Tedd be őket manuálisan - egy hosszú és értelmetlen. Bizonyára van egy beépített szerver néhány TeamCity vagy CruiseControl, ami megy a terméket. Tehát a legtöbb jó építmények szerverek egyszerre, a dobozból kivéve támogatás teszteket, és még feldolgozni a naplók és festett szép jelentéseket. Betartása, persze, nem „minden kompatibilis minden”, de ha volt egy teszt keretet a tanácsot a cikk elején - az esélye, hogy ez működni fog nagyon magas. Például én már említettük, és TeamCity Google teszt jó barátok egymással.

utószó

Figyelmes olvasó észreveheti, hogy a tételek közötti bárhol a hetedik nyolcadik nem valószínű, hogy illeszkedjen egy nyilatkozatában „címmel 10 perc lépés.” Mit is mondhatnék? Vegye figyelembe, hogy nem vagyok jó ember, akkor egy kis vágott. Azonban, ha gyakorolsz jogos felháborodás telt ezeket a tételeket, akkor:

  1. Van egy projekt, amely vizsgálatok vannak csavarva. Úgy kezdte meg munkáját, több mint nulla, és már viszi a szívességet.
  2. Kapsz, hogy megtapasztalják az egész ebben az esetben.
  3. A második alkalommal kap komoly hamarosan.

Itt, és eldönti, hogy megérte-e vagy sem.

Valahol pont után a 8. - egy jó ideje, hogy vezessenek be egy teszt projektet a csapat. Magyarázza 2-3 bekezdések mit és hogyan mutatnak példát egy egyszerű tesztet, vegye figyelembe, hogy, mondjuk, «bátran hozzá a saját vizsgálatok», de nem különösebben hosszú prések. Ha írsz a vizsgálatokat vették, valószínűleg az első benyomás lesz óvatos szkepticizmussal és félreértés. Gyorsan kezelt után a második és harmadik említésre került a találkozón, hogy azt mondják, „és mi megtaláltuk a hibát a tésztából” vagy „és itt írásbeli teszt és rögtön tudjuk, hogy fog törni újra.” A programozók - az emberek racionális, értik és fitt.