Hogyan építettünk automatizált tesztelői felmérőt programozói háttér nélkül?

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:

  1. Rendelkezik egy pontos specifikációval (pl. egy regisztrációs űrlap mezőinek szabályaival)
  2. Minden szabálysértésre egyedi, rögzített hibaüzenetet ad
  3. 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.

Megosztás

Kérsz értesítést a legújabb cikkekről?

Kapcsolódó cikkek

20 év szoftvertesztelés után ezt látjuk minden sikeres szoftverprojektben

Húsz év és több száz projekt után az ember már nem az egyedi eseteket jegyzi meg, hanem az ismétlődő mintákat. A legérdekesebb felismerés az, hogy a sikeres szoftverprojektek mennyire hasonlítanak egymásra. Más az iparág, más a technológia, más a csapat, mégis ugyanazok az elvek térnek vissza bennük, újra és újra. A kudarcok ezzel szemben mind

T&M vagy fix projekt? Melyik tesztelési modell mikor működik jobban?

Amikor egy cég külső tesztelési partnert von be, az egyik legkorábbi kérdés nem szakmai, hanem pénzügyi: milyen konstrukcióban dolgozzunk együtt? A válasz sokszor a beszerzési reflexből születik: „adjatok egy fix árat, hogy tudjam, mennyibe kerül”. Érthető igény, de nem mindig a legjobb döntés. A fix ár és a másik klasszikus modell, a T&M (Time and

Scroll to Top

Elérhető tesztelőink

Nézze meg szakértőink profiljait, tapasztalatát és kompetenciáit, és találja meg a projektjéhez illő szakembert.

Töltse le tesztelőink szakmai profilját

Adja meg elérhetőségét egyszer és férjen hozzá valamennyi elérhető profilhoz.