Skip to content

F.I.R.S.T. szabály

by firith on August 31st, 2010

A jó tesztek az alábbi öt jellemzővel rendelkeznek:

Fast: A teszteknek gyorsan kell lefutniuk, mert lassú teszteket nem szívesen futtatunk gyakran, így  nem találjuk meg elég hamar a hibákat ahhoz, hogy könnyen javíthassuk őket. Emiatt nem merjük a kódot refoctorizálni, tisztítani, ami a kód minőségének romlásához vezet.

Independent: A tesztek nem támaszkodhatnak egymásra, nem élhetünk feltételezésekkel a következő teszt számára. Szabadon kiválasztott vizsgálatok önállóan is futtathatóaknak kell lenniük, bármilyen sorrendben. Az egymásra támaszkodó tesztek esetén, ha az első kudarcot vall, magával rántja a többit is, ami megnehezíti a hiba okának megkeresését és elrejtheti a sorban következő hibákat.

Repeatable: A teszteknek bármely környezetben megismételhetőnek kell lennie: képesnek kell lenniük a futásra mind az éles környezetben, mind a fejlesztői gépünkön, ahogy a laptopunkon is, miközben hálózat és internet nélkül utazunk.

Self-validation: A teszteknek logikai eredményt kell adniuk: siker vagy kudarc. Nem szabad, hogy naplófájlt kelljen végigolvasnunk, szöveges fájlokat kelljen összehasonlítanunk ahhoz, hogy megmondhassuk a teszt sikerrel járt-e. Az ilyen tesztek nem egyértelműek így a kudarc viszonylagossá válik és hosszas értékelést vonhat maga után.

Timely: A teszteket a megfelelő időben kell megírni, közvetlenül az előtt az üzemi kód előtt amelynek teljesíteni kell őket. Ha a teszteket az üzemi kód elkészítése után írjuk, akkor előfordulhat hogy a kódot nehezen lehet majd ellenőrizni és esetleg nem is úgy terveztük meg a kódot, hogy tesztelhető legyen.

forrás: Robert C. Martin: Clean Code, A Handbook of Agile Software Craftmanship

From → Developing

No comments yet

Leave a Reply

Connect with Facebook

Note: XHTML is allowed. Your email address will never be published.

Subscribe to this comment feed via RSS