hogy favágásra lesz főleg alkalmas
Ebben nagyrészt egyetértünk. Szerintem abban nem, hogy a unit teszt az nem ez. Vagy az a unit teszt, ami ilyen mentalitással készül készül, több problémát szül, mint amennyit megold.
Ha jól értem, abban nem értünk egyet, hogy valami tényleg favágás-e. A „code-first Entity Framework modellre kellett repository patternt csinálnom” igen, mert nincs benne semmi üzleti logika. Az „itt az alábbi metódus, írj rá unit-tesztet” viszont szerintem nem favágás.
De jobbat mondok, a csapat legseniorabb emberének a kódját sem szokás prodba tenni, ugyanazokon a folyamatokon kell átmennie (unit test, regression test, statikus analízis, teszt buildek, peer review, stb.), mint a nullkilométeres juniornak.
Ebben sincs köztünk ellentmondás. De azt mindannyian tudjuk, hogy a nagy, komplex, hosszú dolgok hajlamosan hamarabb átcsúszni ezen, mint a „hogyan is nevezzem ezt az propertyt” jellegű apróságok (lásd még bikeshedding). Innentől az, hogy valaki odacsesz ~10 unit tesztet (legyen 500 sor), hogy ezt generálta a chatgpt, akkor jóeséllyel tudjuk, hogy se ő nem nézte át rendesen, se a code review nem fog vele alaposan foglalkozni. És akkor néhány hónap múlva ott fogunk ülni, hogy az XYZ feltétel miért került vajon bele - senki nem tudja, átcsúszott a rengeteg változtatás közt, senki nem vette észre, ezt generálta a chatgpt...
Továbbra sem azt vitatom, hogy ez ne lenne hasznos eszköz. Sőt, azt se vitatom, amit te mondasz fent példát, hogy generáljunk le ismétődő, rövid, könnyen áttekinthető patterneket.
Azt mondom, hogy szerintem annak a generálására nem jó, aminek tömegesen kellene jelen lennie és ellenőrző szerepet kellene betöltenie egy kódbázisban. Ráadásul amikor a unit-test hibát jelez, akkor _nagyon pontosan_ kellene elmondania, hogy mi a hiba, és miért hiba.
Akkor már sokkal inkább használjuk fordítva: hogy hey chatgpt, itt van ~10 unit tesztem, ez lefedi a specifikáció minden részét szerintem, generáld már le azt a kódot, ami átmegy rajta.