Na de pont az API jellegű dolgok azok amik jól tesztelhetőek: megvannak, hogy milyen bemenő paraméterre minek kell történnie.
Nekem is van egy komplexebb szabályalapú rendszerem, ami ráadásul futhat kliens oldalon és szerver oldalon. Eleinte nem volt gond, csak aztán jöttek az egyre komplexebb igények és egy idő után irreálisan megnőtt volna a fejlesztés igénye, ha nem lettek volna rá tesztek. Valóban nem álltam neki minden egyes metódust, settert, gettert tesztelni (az valóban hülyeség lett volna), hanem csak folyamatokat szimuláltam le és a végén megnéztem, hogy az elvárt eredményt adta-e, megfelelő sorrendben futottak-e az események, stb.
Leginkább akkor volt baromi nagy segítség, amikor már két-három éve megvolt a kód, nagyjából kiforrott is volt csak épp hozzá kellett még biggyeszteni olyan dolgokat, amik alapjaiban változtattak meg dolgokat. Olyankor nagyon nagy segítség volt, hogy néhány tíz másodperc alatt kiderült, hogy nem törtem-e el valamit a meglévő dolgok közül. Mert néha sikerült.
Viszont ha te a legelején azt sem tervezed meg, hogy milyen bemenetre mi az elvárt eredmény, illetve mire kell hibát dobni, akkor tulajdonképp miből is áll neked a tervezés? Nem egy-egy metódus szinten, hanem API/folyamat szinten értem a dolgot.
----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™