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

QA staffing: hogyan lehet gyorsan és biztonságosan kapacitást bővíteni?

Bevezetés Előző cikkünkben (itt olvasható) arról írtunk, hogy mikor érdemes külsős tesztelőt bevonni, és mikor intő jel, ha csak tűzoltásra használnánk őket. Most, hogy már tudjuk a „mikor”-t, evezzünk gyakorlatiasabb vizekre, és nézzük meg a „hogyan”-t. Hogyan lehet úgy bővíteni a csapatot, hogy az ne a káoszt növelje, hanem a megoldást hozza el? (Megjegyzés: A szakmában gyakran

Külsős tesztelő bevonása: mikor segít, és mikor pénzkidobás?

Bevezetés Minden szoftverfejlesztési projekt életében eljön az a pont, amikor a csapat vezetője, a projektmenedzser vagy a cégtulajdonos a homlokára csap: „Nekünk azonnal tesztelők kellenek!” A hibák szaporodnak, a fejlesztők túlterheltek, az ügyfél pedig egyre türelmetlenebbül dobol az asztalon. Ilyenkor tűnik logikus és gyors megoldásnak a külsős szakértő bevonása. Felhívunk egy partnert, kérünk két senior

Hogyan teszteltünk új jogosultságkezelést egy vállalati HR rendszerben

Bevezető Egy vállalat HR rendszere nemcsak dolgozói adatokat tárol – bizalmat is kezel. Ha a jogosultságkezelésben hiba van, az nem csupán technikai probléma: adatvédelmi incidens, reputációs kár és jogi következmény is lehet belőle. Ebben az esettanulmányban bemutatjuk, hogyan zajlott egy valós, összetett tesztelési projekt, ahol a cél az volt, hogy a HR rendszer új, LDAP

Scroll to Top
Passed
Adatvédelmi áttekintés

Ez a weboldal sütiket használ, hogy a lehető legjobb felhasználói élményt nyújthassuk. A cookie-k információit tárolja a böngészőjében, és olyan funkciókat lát el, mint a felismerés, amikor visszatér a weboldalunkra, és segítjük a csapatunkat abban, hogy megértsék, hogy a weboldal mely részei érdekesek és hasznosak. Adatkezelési tájékoztató