Bevezető
Szakmai vezetőként gyakran találkozom azzal a kihívással, hogy hogyan mérjem fel a munkatársaim tudását, és hogyan biztosítsak számukra olyan gyakorlási lehetőségeket, amelyek valóban fejlesztik a tesztelési készségeiket. A hagyományos elméleti feladatok ugyan hasznosak, de nem mindig tükrözik a valós munkakörnyezetet. Szükségem volt olyan gyakorló feladatokra, amelyek:
- Segítenek felmérni, hogy a tesztelők valóban ismerik-e a teszteset-tervezési technikákat
- Gyakorlati környezetben alkalmazhatók
- Nem igényelnek túl sok szakember időt az ellenőrzéshez – ideális esetben automatizálhatók
A kérdés az volt: hogyan lehet olyan feladatokat készíteni, amelyek objektíven, automatizáltan ellenőrizhetők, miközben ténylegesen mérik a tesztelői képességeket?
Az ötlet: „Keresd meg a hibaüzeneteket!”
Az áttörést egy egyszerű felismerés hozta meg. A legtöbb teszteset-tervezési technika (határérték-elemzés, ekvivalencia-particionálás, negatív tesztelés) gyakorlása nagyrészt arról szól, hogy szisztematikusan végigmegyünk minden lehetséges érvénytelen inputon.
Mit lehet ez alapján csinálni? Készítettem egy egyszerű alkalmazást, amely:
- Rendelkezik egy pontos specifikációval (pl. egy regisztrációs űrlap mezőinek szabályaival)
- Minden szabálysértésre egyedi, rögzített hibaüzenetet ad
- A tesztelő feladata: találd meg az összes hibaüzenetet!
Ez elég egyszerű, mégis hatékony:
- A tesztelőnek negatív teszteseteket kell terveznie (a pozitív próbálkozásra is kap egy üzenetet, így ennek a kigyűjtése is része a feladatnak).
- Alkalmaznia kell teszteset-tervezési technikákat
- A hibaüzenetek számlálhatók és egyediek – automatikusan ellenőrizhető, ki hányat talált meg
- Objektív eredményt kapunk: van 50 lehetséges hibaüzenet, a tesztelő 42-t megtalált
Változatok: API, Web, Desktop, Mobil
Ez a koncepció sokféle platformon megvalósítható:
- API: REST endpoint-ok, ahol JSON/XML adatokat kell validálni
- Web: Űrlapok böngészőben
- Desktop alkalmazás: Ablakos felület mezőkkel
- Mobil app: Android vagy iOS alkalmazás
Egy további szint: állomány-alapú validáció. Itt nem mezőket töltenek ki, hanem előre meghatározott formátumú fájlokat (JSON, XML, YAML, CSV) kell feltölteni. Ez egyszerre gyakoroltatja:
- A tesztadat előállítást
- Az állomány formátumok megértését
- A teszteset-tervezést
A segítség megérkezett…
Kiindulópont
Nem vagyok profi fejlesztő. Vannak programozási ismereteim, de nincs gyakorlatom. Ennek ellenére sikerült megvalósítani ezeket az alkalmazásokat viszonylag rövid időn belül. Ezt annak köszönhetem, hogy alkalmaztam a ma divatos szóval AI-nak nevezett technológiát.
Választott technológiák
A különböző platformokhoz különböző, könnyen kezelhető technológiákat választottam:
API és Web alkalmazások: Apache + MySQL + PHP Docker konténerben
Ez a kombináció könnyen összeállítható környezetet biztosít. A Docker használata azért ideális, mert az alkalmazás izolált konténerben fut, nem telepszik rá a gépre, és probléma nélkül átvihető másik számítógépre. Az AI asszisztens (Claude Code) segítségével a Docker konténerek konfigurálása egyszerűvé válik.
További előny, hogy az elkészült alkalmazást internetre telepíteni sem okoz gondot. A legtöbb webtárhely Apache-ot, PHP-t és MySQL-t kínál, így a gyakorló feladat könnyen publikálható.
Desktop alkalmazás: Python
A Python kiváló választás desktop alkalmazásokhoz, ha valaki nem profi fejlesztő. A tanulási görbe alacsony, a szintaxis olvasható. Ablakos felület készítésére több könyvtár (tkinter, PyQt) rendelkezésre áll. További előny, hogy a Python scriptek futtatható fájllá fordíthatók (PyInstaller), így a végfelhasználóknak nem kell Python interpreterrel rendelkezniük. Ez működik Windows-on, Linux-on és MacOs-en is. Az AI itt is nagy segítség.
Mobil (Android): MIT App Inventor
Az MIT App Inventor egy vizuális programozási környezet (https://appinventor.mit.edu). A legnagyobb előnye, hogy Android fejlesztési tudás nélkül is lehet vele alkalmazást készíteni. A programozás blokkokkal történik, hasonlóan a Scratch-hez. Egy gyakorló feladat elkészítéséhez nem szükséges profi mobil fejlesztői tudás – a validációs logika App Inventorban is megvalósítható. Rengeteg példaprogram és oktató anyag található hozzá és nagyon könnyen elsajátítható. Az első működő alkalmazás 15 percen belül kész.
Fejlesztői környezet: Visual Studio Code + Claude Code
A Visual Studio Code (VSCode) egy ingyenes, nyílt forráskódú kódszerkesztő, amely ma már az egyik legnépszerűbb fejlesztői eszköz. Könnyű, gyors, és rengeteg bővítménnyel (extension) testre szabható.
A Claude Code egy AI-asszisztens, amely képes közvetlenül a VSCode-ban is futni bővítményként. Ez a kombináció azért kiemelkedően hatékony, mert:
- A Claude Code látja az egész projekt struktúráját
- Képes fájlokat olvasni, létrehozni, módosítani
- Kódot generál, debuggol, magyaráz
- Segít a Git műveletekben (commit, push, branch kezelés)
- Válaszol kérdésekre a projekt kontextusában
- Képes tesztelni az egyes elemek vagy az egész termék működését
Gyakorlatilag így működik: leírom természetes nyelven, mit szeretnék (pl. „készíts egy validációs függvényt, ami ellenőrzi az email formátumot”), és a Claude Code elkészíti a kódot, beilleszti a megfelelő helyre, és még tesztet is ír hozzá, ha kérem. Nem-programozóként ez óriási segítség, mert nem kell minden szintaktikai részletet fejből tudni – az AI asszisztens helyettesíti a hiányzó rutint.
Tanulási görbe
Az első alkalmazás elkészítése 2-3 hét nettó munkát igényelt. Sok időt töltöttem azzal, hogy megértsem a technológiákat, és hogy hogyan kommunikáljak hatékonyan az AI-val.
A második projekt már csak 1 hét volt. Jelenleg 2-3 nap alatt össze tudok rakni egy új gyakorló alkalmazást.
Mi segített a legjobban?
Claude Code volt a legnagyobb segítség. Kipróbáltam más AI asszisztenseket is (Google Studio, Copilot, Codex), de számomra a Claude Code vált be a legjobban. Az az érzésem, hogy ez az eszköz látja a legátfogóbban a projektet egyben, és jobban érti a kontextust.
Viszont a tapasztalatom az, hogy programozói tudás nélkül néha bevinne a málnásba. Néha képes hibás kódot generálni és nem mindig tudja segítség nélkül javítani. Ez akkor fordult elő, amikor a kód elért egy bizonyos komplexitást. Innentől nagyon oda kellett figyelnem mit, mennyit kérek, hogyan fogalmazom ezt meg. Ez megérne egy külön cikket :).
A Claude Code előnye még fejlesztésnél, hogy létre lehet benne hozni úgynevezett agent-eket, amik egy fejlesztési csapatban résztvevőknek feleltethetők meg: architect, backend fejlesztő, frontend fejlesztő, tesztelő, stb. Egy-egy fejlesztési feladatot ki lehet adni úgy, hogy ezek az agent-ek egymással kommunikálva a munkákat párhuzamosítva dolgozzanak. Így gyorsabb és jobb minőségű kódolást kapunk.
Git és GitHub verziókezelés használata szintén kulcsfontosságú volt – és ebben is sokat segített a Claude Code. Bár egyedül fejlesztettem AI segítséggel, a verziókezelés így is nélkülözhetetlen elem. A Git lehetővé teszi, hogy nyomon kövessem a változtatásokat, visszaállítsak korábbi állapotokat, ha valami elromlik, és különböző ötleteket külön ágakon (branch) próbáljak ki anélkül, hogy tönkre tegyem a működő verziót. A GitHub pedig biztonságos tárolást nyújt, és bárhonnan hozzáférhetek a projekthez. A Claude Code automatikusan kezeli a Git műveleteket – commit üzeneteket készít, push-ol, branch-eket hoz létre -, így nekem csak jóvá kell hagynom a változtatásokat, nem kell kézzel Git parancsokat írnom. Lényegében a Claude Code automatizálta a verziókezelést.
Tapasztalatok és tanulságok
Mi működik jól?
- Tesztelés gyakoroltatás
- Hibakeresés feladatok
- Tesztadat készítés feladatok
- Specifikus technikákra fókuszálás: Könnyen lehet olyan feladatokat készíteni, amelyek egy-egy konkrét teszteset-tervezési technikára koncentrálnak (ekvivalencia-particionálás, határérték-elemzés, ok-okozat analízis)
- Tesztautomatizálás alapjai: A módszer alkalmas arra is, hogy a tesztelők megtanulják az automatizálás alapjait – akár az általuk készített teszteseteket automatizálhatják
- Objektív mérés: A talált hibaüzenetek száma egyértelmű, vitatható visszajelzést ad
Kihívások és korlátozások
Megoldások kiszivárgása: Ha a munkatársak megosztják egymással a megoldásokat, a feladat elveszti értelmét. Megoldási lehetőség: könnyű kisebb módosításokkal változatokat készíteni (más validációs szabályok, más mezők, más üzenetek).
Nem minden területre alkalmazható:
- SQL gyakorlás: Ez a módszer nem jó SQL tudás fejlesztésére – teljesen más megközelítésre van szükség
- Üzleti folyamatok tesztelése: Komplex üzleti folyamatok tesztelésének gyakorlására ez a koncepció nem ideális
Összegzés
AI asszisztensek – konkrétan a Claude Code – segítségével sikerült olyan gyakorló feladatokat készítenem, amelyek:
- Valós tesztelői készségeket mérnek
- Automatizáltan ellenőrizhetők
- Nem igényelnek mélyebb programozási tudást a létrehozáshoz
A kezdeti 2-3 hetes tanulási periódus után most már napok alatt tudok új gyakorló környezeteket készíteni. A módszer nem csodaszer, de hatékonyan kiegészíti a hagyományos tesztelői képzést, és objektív visszajelzést ad a tudásszintről.
Az AI-asszisztált fejlesztés megnyitotta azt a lehetőséget, hogy nem-programozóként is képes legyek olyan eszközöket készíteni, amelyek valódi értéket teremtenek a szervezet számára.


