5%-ról 96%-ra teszt lefedettség egy nap alatt — AI CoPilot-nak köszönhetően

5%-ról 96%-ra teszt lefedettség egy nap alatt — AI CoPilot-nak köszönhetően...

16 May 2025

5

perc olvasás

AI innováció

Adrian Sweeney

Amikor elkezdtem ezt a projektet és még mindig egy kis kódbázis volt, tudtam, hogy az egységtesztelés fontos lesz, de mint sok fejlesztő, félretettem a első tesztkészlet felépítése után a fő funkcionalitás építése mellett. A fő célom a korai szakaszokban az volt, hogy a middleware logikát működésre bírjam — az alkalmazás szíve — és életre keltsem a Minimum Viable Product (MVP) terméket. Ez azt jelentette, hogy a tesztlefedettség nagy részét kihagytam a haladás érdekében.

Amint az MVP működött, visszafordítottam a figyelmemet a tesztelésre. A projektet nézve legalább egy vagy két hét tesztírást becsültem, attól függően, hogy mennyire összetett az egyes komponensek. Néhány egyszerű lett volna. Mások — különösen ott, ahol szélsőséges esetek vagy bonyolult elágazási logika volt érintett — sokkal időigényesebbek lettek volna.

Ezen a ponton az AI-hoz fordultam. A "CoPilot"-ot használtam a kódírás segítésére és arra gondoltam, hogy segíthet a tesztekkel is.

Korai hibák az AI-val

Kezdetben megkértem az AI-t, hogy "írjon egységteszteket" anélkül, hogy valós kontextust vagy korlátozásokat adtam volna. Az eredmény? Zűrzavar. A tesztek nem működtek, rossz feltételezéseket tettek a kódról, és az egész vállalkozás hibás teszt kód és frusztráló újraírások ciklusává vált. Az AI sok kódot generált — de nem olyan típust, amit komolyabb refaktorálás nélkül használhattam volna.

Irány megadása az AI-nak

Az áttörés akkor jött, amikor megváltoztattam a megközelítésemet. Ahelyett, hogy varázslóként bántam volna az AI-val, elkezdtem inkább junior fejlesztőként használni. Egyszerre egy fájlt adtam neki, megmagyaráztam a kód szándékát és azt mondtam neki, hogy koncentráljon pontos, funkcionális tesztek írására csak arra a fájlra.

Ez mindent megváltoztatott.

Hirtelen a tesztek könnyebbé váltak az AI számára implementálni. Megfelelően korlátozottak voltak, a valós logikával összehangolva és nem igényeltek órákig tartó hibakeresést. Az AI-m fájlról fájlra haladt, teszteket írva és futtatva.

Az eredmények

Kevesebb mint egy nap alatt a tesztlefedettség 5%-ról 96% fölé ugrott.

  • Utasítások: 96,72%
  • Ágak: 95,67%
  • Függvények: 92,1%
  • Sorok: 96,87%

A tesztek, amelyek napokig tartottak volna megírni, órák alatt elkészültek, és a lelki békesség, amely a szinte teljes tesztlefedettséggel jár? Felbecsülhetetlen.

Egy Test Suite-ról és 5 tesztről eljutottam:

  • 20 Test Suite
  • 136 Sikeres teszt

Mit tanultam

  • Az AI nem varázslat — de hihetetlen segéd. Adj neki kontextust, irányítsd, és kiváló eredményeket kapsz.
  • A fókusz számít. Az AI-tól azt kérni, hogy "teszteljen mindent" káoszhoz vezet. Azt kérni tőle, hogy tesztelje ezt a fájlt, ezt a függvényt, ezt az esetet — ez működik.
  • Számíts hibakeresésre — de sokkal kevesebbre, mint nulláról írni. Az AI néha hibázik, de az általános folyamat sokkal gyorsabb, mint egyedül dolgozni.

Akár új projektet indítasz, akár egy régebbihez próbálsz teszteket hozzáadni, az AI hatalmas időmegtakarítás lehet — ha helyesen használod.

Használsz AI-t tesztek írására a projektjeidben? Milyen a tapasztalatod?

PrimeCRM

Vissza a Tudásközpontba