Rendszerszemlélettel a tesztelés és a fejlesztés határvonalának összemosódása ellen
Az IT szektorban rettenetesen gyorsan változnak a követelmények és az elvárások. Mint minden más szakmának, a szoftvertesztelésnek és a fejlesztésnek is megvannak a nehézségei, mint például a két pozíció határvonalának gyakori összemosódása. Erről beszélt nekünk Lévai Tamás, aki Head of Service Delivery Unit pozícióban dolgozik az IT Services Hungary-nél.
A szoftvertesztelés egy megkerülhetetlen eleme az informatikának. Ahhoz, hogy az elkészített termék megfeleljen minden környezetnek, az ügyfél elvárásainak és a biztonsági előírásoknak, akár 4-500 különböző tesztet is le kell futtatni rajta, majd a felszínre kerülő problémákat orvosolni kell. Sokszor a megrendelők is összetévesztik a szoftverfejlesztői feladatokat a tesztelői feladatokkal, ezért olyan módosításokat kérhetnek tőlük, melyek elvégzése eredetileg nem az ő felelősségük lenne.
Gyakran olyan nagy a nyomás a fejlesztésben, hogy a területek összemosódnak. Néha már nehéz megkülönböztetni, hogy mi az, ami a fejlesztéshez kapcsolódó teszt, és mi az, ami már az azutáni teszt, ezért fontos a megfelelő módszertan használata. Ilyen például a TDD (Test Driven Development), ami a fejlesztési folyamat nagyon erős teszt-oldali megtámogatásáról szól.
A TDD egy iteratív szofverfejlesztési módszertan, amiben már az új funkció implementálása előtt meg kell írni az ahhoz tartozó automatizált teszteket. Ezen felül nagy előnye, hogy ösztönzi a kisebb iterációkban történő fejlesztést, mivel egyszerűbb a hibákat megtalálni tíz sor kódban, mint ötezerben.
Viszont ezt például teljesen külön kellene kezelni a fejlesztési folyamattól. Ebben a fázisban már különböző regressziós és teljesítmény teszteket kell lefuttatni, amik már egyértelműen nem fejlesztés-központúak.
A nehézségek általában abból fakadnak, hogy a tankönyvekben le van írva valami, de a valós életben ez sohasem úgy történik meg. Olyan is gyakran történik, hogy a megrendelő olyan megoldást vár el a tesztelő csapattól, ami például a szoftverfejlesztők dolga. Ilyen helyzetekben fontos a megalapozott rendszerszemlélet, hiszen anélkül a cégen belül dolgozók könnyen elveszhetnek a rájuk zúduló felelősségek között.
Emiatt - és persze az IT szektor rohamos változása miatt is - elkerülhetetlen, hogy a fejlesztők és a tesztelők is nyitottak és rugalmasak legyenek, valamint kövessék az új technológiai vívmányok fejlődését.