A feltáró tesztelés a szoftvertesztelés egy speciális típusa, amely számos előnnyel jár egy alkalmazás számára, lehetővé téve annak teljes potenciáljának kiaknázását.
Az, ahogyan a csapat a feltáró tesztelést a rutinellenőrzésekbe integrálja, akár azt is meghatározhatja, hogy mennyire jól működik a szoftver, különösen, mivel ez új és váratlan módon közelíti meg a tesztelési eljárásokat. Ez segít a tesztelőknek feltárni az alkalmazáson belüli problémákat, amelyek egyébként a bevezetésig észrevétlenek maradhatnak, és azt eredményezhetik, hogy a kulcsfontosságú funkciók nem működnek.
A feltáró tesztelés folyamatainak, típusainak és megközelítéseinek megértése segíthet a szervezet és a tesztelő csapatok irányításában, hogy hogyan építsék be a szokásos ellenőrzésekbe.
A csapat számos ingyenes eszközt is használhat, hogy megkönnyítse ezeket az ellenőrzéseket, és észrevegye a problémákat, mielőtt azok a fejlesztés útjában álló akadályokká válnának.
Ebben az útmutatóban bemutatjuk a feltáró tesztelés előnyeit, valamint a legfontosabb szempontokat, amelyeket a csapatoknak figyelembe kell venniük a bevezetés előtt.
Mi a feltáró tesztelés?
A feltáró tesztelés egyesíti a teszttervezési és a végrehajtási szakaszokat, teljes működési szabadságot biztosítva a tesztelőnek, és lehetővé téve számára, hogy folyamatosan racionalizálja munkáját.
Ahogy ezek a csapatok ellenőrzik a szoftvert, valószínűleg új komponenseket fedeznek fel, amelyek alapos vizsgálatot igényelnek, és könnyen előállhatnak olyan új tesztekkel, amelyek az alkalmazás javát szolgálnák.
A feltáró tesztelés hasonló az ad hoc teszteléshez, de sokkal szigorúbb dokumentációt követ, és aktívabb tanulási folyamatot is tartalmaz.
A kevésbé strukturált megközelítés segít a tesztelőknek megállapítani, hogy az alkalmazás valószínűleg hogyan reagál a reális forgatókönyvekre és tesztesetekre, és a szkriptelt tesztelés fontos kiegészítője.
Egy csapat feltáró tesztelésének minősége gyakran az egyes tesztelők képességein múlik, mivel az ellenőrzések kreativitást és a szoftver alapos ismeretét igénylik. Ez a folyamatos felfedezés folyamata, amelyben a tesztelők deduktív érvelést használnak általános technikájuk irányításához.
A feltáró tesztelés különösen hasznos, mivel azt tükrözi, hogyan használhatják a felhasználók a szoftvert. A legtöbb felhasználó véletlenül talál hibákat és problémákat, így ezek a nem szkriptelt folyamatok segíthetnek a tesztelőknek megtalálni azokat a problémákat, amelyeket az előre meghatározott ellenőrzések nem fedeznek fel.
Az is lehetséges, hogy egy csapat automatizálja ezt az eljárást a nagyobb hatékonyság érdekében.
1. Mikor van szükség feltáró tesztelésre?
A feltáró tesztelés általában véve szinte minden szoftvertesztelési folyamat során hasznos, bár különösen jól alkalmazható az alkalmazással kapcsolatos gyors visszajelzések adására.
A csapat akkor is beépítheti ezeket az ellenőrzéseket, ha kifogytak a szkriptelt tesztekből. A szoftverellenőrzésük világos iránya nélkül a feltáró tesztelés segíthet olyan problémák feltárásában, amelyek kívül esnek a szabványos ellenőrzéseken.
A különféle tesztelési eljárások biztosítása lehetővé teszi a tesztelők számára, hogy a szoftvert sokkal mélyebb szinten értsék meg bármelyik szakaszban, de a korai szakaszban történő elvégzésük több előnnyel járhat.
A csapatok később szükség esetén újra elvégezhetik a feltáró teszteket, hogy még nyugodtabbak legyenek.
2. Amikor nincs szükség feltáró tesztelésre
Van néhány olyan forgatókönyv, ahol a feltáró tesztelés nem nyújt előnyöket, bár a tesztelők számára hasznosabb lehet megvárni, amíg a szoftver alapvető funkcionalitással rendelkezik.
Egy alkalmazás funkciói jellemzően keresztezik egymást, vagy kölcsönhatásba lépnek egymással, ami azt jelenti, hogy az egyik funkcióra vonatkozó feltáró tesztek elavulttá válhatnak, amint a fejlesztőcsapat további funkciókat ad hozzá a szoftverhez.
Ezeket a teszteket a szkriptelt ellenőrzések mellett is gond nélkül el lehet végezni, feltéve, hogy a tesztelők a félreértések elkerülése érdekében erős dokumentációt tudnak biztosítani.
A feltáró tesztelés más tesztelési típusokhoz képest rendkívül sokoldalú, így ezek az ellenőrzések jól alkalmazhatók.
3. Ki vesz részt a feltáró tesztelésben?
A feltáró tesztelés valamilyen szempontból sok munkatársat érint, többek között:
– Bármilyen szintű szoftvertesztelők elvégezhetik ezeket a teszteket, bár a szoftvert jobban ismerő csapattagok többféle ellenőrzést tudnak tervezni.
A tapasztalat is befolyásolhatja a leghasznosabb tesztek meghatározásának képességét.
– Azok a szoftverfejlesztők, akik tudomásul veszik e tesztek eredményeit, minden javaslatra reagálnak, és gyakran saját megoldást dolgoznak ki a problémára.
A tesztekre adott válaszuk teszi lehetővé, hogy az alkalmazás elérje a sikeres kiadáshoz szükséges állapotot.
– A projektmenedzserek felügyelik az egész folyamatot, és akár ők dönthetnek arról is, hogy a csapatok milyen tesztelési típusokat alkalmaznak.
Felelősek lehetnek a csapatok számára olyan szoftverek beszerzéséért is, amelyekkel egyszerűsíthetik vagy akár automatizálhatják a teszteket.
Feltáró tesztelés életciklusa
A feltáró tesztelési folyamat nagy hangsúlyt fektet a tesztelő szabadságára, de mégis egy meghatározott struktúrát követ.
A megközelítés három fő szakasza a következő:
1. szakasz: Tanulás
A tesztelők a szoftver és annak funkcionalitásának alapos megértésével kezdik a munkát – kritikusan elemzik azt, hogy megállapítsák, hogyan illeszkedik egymáshoz.
Ez lehetővé teszi a tesztelő számára, hogy kitalálja azokat a szokásos bemeneteket, amelyeket egy felhasználó megvalósíthatóan megadhat, bár lehet, hogy már tisztában van az alkalmazással és annak működésével.
A tanulási szakaszban akár oktatóprogramra is szükség lehet a szoftver működtetéséhez. Ez a feltáró szakasz, amely a tesztelőt minden olyan információval felvértezi, amely szükséges ahhoz, hogy hasznos tesztek széles körét tervezhesse meg.
2. szakasz: Teszttervezés
A feltáró tesztek tervezése különböző szabályokat és paramétereket tartalmaz, de még így is lényegesen nagyobb szabadságot kínál a szkriptelt teszteléshez képest – amelynek sajátosságai már a tesztelés megkezdése előtt ismertek.
A tesztelő olyan ellenőrzéseket dolgozhat ki, amelyekről úgy véli, hogy pontosabban illeszkednek az alkalmazáshoz, és potenciálisan értékes adatokat tárhat fel a fejlesztőcsapat számára, beleértve a javítandó, figyelemre méltó hibákat is.
A tesztelő csapatok ezt a szakaszt arra használják, hogy megállapítsák, milyen megközelítést alkalmazzanak, és hogyan osszák el a munkát a különböző tesztelők között úgy, hogy az erősségeiket kihasználják.
3. szakasz: Végrehajtás
A használandó ellenőrzések megtervezése után a tesztelők mostantól a szerintük leghatékonyabb módon vizsgálhatják az alkalmazást – ezt akár közvetlenül a konkrét teszt megtervezése után is elvégezhetik.
Ez az a szakasz, amikor a tesztelők aktívan keresik a problémákat, és azt, hogy az általuk feltárt problémák hogyan befolyásolhatják más funkciókat és funkciókat.
Bár a feltáró tesztek végrehajtásában van némi intuitív munka, mégis meghatározott folyamatokat és célokat követ, lehetővé téve a gördülékeny tesztelést, amely könnyen alkalmazkodik a konkrét tesztelési célokhoz.
Feltáró vs. szkriptelt tesztelés
A feltáró tesztelés gyakorlatilag a szkriptelt tesztelés ellentéte, bár mindkettő fontos lehet egy alkalmazás kiadásra való alkalmasságának biztosítása szempontjából. Ez utóbbi általában formálisabb és strukturáltabb, és számos átfogó tesztet foglal magában, szemben a feltáró ellenőrzésekkel, amelyek gyakran az alkalmazás funkcionalitására specifikusabbak.
Ennek részeként a feltáró tesztelés is lényegesen alkalmazkodóbb, míg a szkriptelt tesztek nehezen tudnak alkalmazkodni, ha a szoftverben jelentős változások történnek. A feltáró tesztek gyorsabban felfedhetik a hibákat és gyorsabban léphetnek fel ellenük, így az előbbi különösen hasznos lehet olyan esetekben, amikor a gyors visszajelzés a legfontosabb.
1. Aktív feltáró tesztelés
Az aktív feltáró tesztelés során a tesztelő automatizált szkriptet tervez az ellenőrzéseihez, amelyet egy másik tesztelő hajt végre. Ezek a szkriptek adott esetben figyelembe veszik az előző teszteket.
A két tesztelő általában szerepet cserél az ellenőrzési eljárás során, hogy kétszeresen ellenőrizze a szkriptek és folyamatok megbízhatóságát.
Az aktív tesztek szélesebb lefedettséggel rendelkeznek anélkül, hogy feláldoznák a feltáró ellenőrzések védjegyszerű specifikusságát. Ezek a szkriptek jobb dokumentációt is lehetővé tesznek, megkönnyítve a tesztelők által talált problémák reprodukálását.
A dokumentáció az aktív tesztek lényeges eleme, mivel ez segít az érdekelteknek abban is, hogy lássák az alkalmazás általános előrehaladását.
2. Passzív feltáró tesztelés
A passzív feltáró tesztelés csak egy tesztelőt igényel, bár a páros munka még tovább egyszerűsítheti a folyamatot.
Ez a megközelítés olyan speciális szoftvert foglal magában, amely rögzíti a tesztelők műveleteit – egyszerű lépéseket biztosítva számukra az általuk felfedezett problémák megismétléséhez. Ez általában egy videó formájában történik, amelyben a tesztelő kommentálja a műveleteket, és lépésről lépésre elmagyarázza azokat.
A tesztelési folyamat rögzítése betekintést nyújt az alkalmazás teljesítményébe is, beleértve azt is, hogy milyen gyorsan reagál a beviteli kérésekre.
A passzív tesztelés mind a tesztelők, mind a fejlesztőcsapat számára rengeteg részletes információt nyújt a szoftver működéséről.
Feltáró tesztelési technikák
A feltáró tesztelés jellemzően egy „túra” formáját követi – ahol a tesztelő a lehető leghatékonyabb módon vizsgálja meg a szoftvert.
A csapat különböző túrák közül választhatott, többek között:
– Útikönyv túrák
Ez a megközelítés az alkalmazás kiemelt funkcionalitását helyezi előtérbe, pontosan leképezve azt, ahogyan egy átlagos felhasználó a szoftverrel dolgozik, és feltárva azokat a problémákat, amelyeket természetes módon találna.
– Történelmi túrák
Ez a túra megvizsgálja az alkalmazás legrégebbi funkcióit, hogy megbizonyosodjon arról, hogy azok még mindig működnek-e. Ez különösen fontos, ha a fejlesztők olyan új funkciókat adtak hozzá, amelyek konfliktusba kerülnek vele.
– Pénz túra
Ez a feltáró teszt a kritikus alkalmazási funkciókat ellenőrzi, különösen azokat, amelyek eléréséért az ügyfelek és az ügyfelek pénzt fizetnek – ezek jellemzően a tesztelő csapat legmagasabb prioritásai.
– Bűnügyi túra
A tesztelők néha aktívan dolgoznak azon, hogy megtörjenek egy alkalmazást, vagy negatív forgatókönyveket idézzenek elő, például érvénytelen információk megadásával és annak vizsgálatával, hogy az alkalmazás hogyan reagál erre.
– Hátsó sikátor túra
Ez a folyamat olyan funkciókat foglal magában, amelyeket valószínűleg kevesebb ügyfél fog használni; ezek ugyanolyan fontosak bármilyen tesztelési megközelítéshez, különösen mivel kölcsönhatásba lépnek más funkciókkal.
– Szellemi túra
Ez a túra továbblendíti az alkalmazást, a legbonyolultabb funkciókat nagyobb (néha a maximális) értékekkel teszteli, hogy meghatározza a szoftver feldolgozási sebességét.
Feltáró tesztelési megközelítések
A feltáró tesztelésnek két fő megközelítése van:
1. Munkamenet-alapú feltáró tesztelés
Ez egy időalapú technika, amelynek célja a tesztelési folyamat számszerűsítése azáltal, hogy azt „ülésekre” osztja, amelyeknek két összetevője van: a küldetések és a charták.
A küldetés az adott munkamenet célja és időtartama, amely a feltáró tesztelő számára egyértelmű fókuszt biztosít.
A charta meghatározza minden munkamenet hatókörét, és részletezi azokat a konkrét célokat, amelyeket a tesztelő teljesíteni kíván. Ez magasabb szintű elszámoltathatóságot (és dokumentációt) eredményez azáltal, hogy ezeket az ellenőrzéseket kezelhetőbb összetevőkre bontja.
A munkamenet-alapú tesztek javítják a termelékenységet is, és a tesztelő számára egyértelmű mérési és hibaelhárítási információkat biztosítanak.
2. Páros alapú feltáró tesztelés
A páros alapú tesztelés hasonlít az aktív feltáró teszteléshez, mivel elsősorban párokban – általában ugyanazon az eszközön – dolgoznak, hogy folyamatosan és egyidejűleg ellenőrizzék az alkalmazást. Ebben az elrendezésben az egyik tesztelő tesztelési eseteket javasol, és jegyzeteket készít az előrehaladásról, míg a másik teszteli a szoftvert.
A kommunikáció a páros tesztelés során elengedhetetlen, mivel ez biztosítja, hogy mindkét tesztelő tisztában legyen az ellenőrzésekkel és azok céljával.
Ha maga osztja ki ezeket a párokat, ügyeljen arra, hogy minden tesztelő erősségeit és gyengeségeit figyelembe vegye, mivel így erősebb feltáró tesztelési folyamatokat építhet ki.
Milyen tényezők befolyásolják a feltáró tesztelést?
A csapat feltáró tesztelésének minőségét befolyásoló tényezők a következők:
– A szoftver átfogó célja és alapvető funkciói.
– Az alkalmazás jelenlegi fázisának konkrét tesztelési céljai.
– A csapat egyes tesztelőinek egyéni szerepe és képességei.
– A rendelkezésre álló eszközök, például a tesztek automatizálására szolgáló ingyenes szoftverek.
– A tesztelők által a kollégáktól vagy a vezetőségtől kapott támogatás.
– Az ügyfél kérései és a piac jelenlegi általános trendjei.
– Az alkalmazás könnyű kezelhetősége, például a felület gördülékenysége.
– A tesztelőknek a tesztelési fázis befejezéséhez rendelkezésre álló idő.
– A tesztelők által használni kívánt bemeneti és egyéb válogatott adatok.
– A funkciók, amelyeket a fejlesztők idővel hozzáadnak a szoftverhez.
A feltáró tesztelés típusai
A feltáró tesztelés három fő típusa, amelyet egy csapat beépíthet:
1. Szabad stílusú feltáró tesztelés
A szabad stílusú tesztelés az alkalmazás ellenőrzésének ad hoc megközelítését jelenti. Kevés szabályt kell figyelembe vennie, így hatékonysága változó lehet; egyes szoftverek és komponensek szilárdabb módszertant igényelnek.
Ezek az ellenőrzések még mindig rengeteg előnnyel járhatnak, mivel segítenek a tesztelőknek megismerkedni ezzel az alkalmazással, és érvényesíthetik egy korábbi tesztelő munkáját.
Még szigorú szabályok nélkül is, a tapasztalt és képzett tesztelők könnyen kihasználhatják ezt a formátumot a saját előnyükre. A szoftver minden aspektusán könnyedén végigmehetnek – bizonyos helyzetekben a tesztelési szabályok korlátozóak, és akaratlanul is korlátozhatják a csapat eredményeit.
2. Forgatókönyv-alapú feltáró tesztelés
A forgatókönyv-alapú tesztelés minden teszt alapjául valósághű helyzeteket használ, például olyan bemenetek ellenőrzésével, amelyeket a felhasználók valószínűleg a szoftver tipikus működése során végeznek.
A tesztelők keményen dolgoznak, hogy minden általuk kidolgozott forgatókönyv megfeleljen annak, ahogyan a felhasználó az alkalmazással kapcsolatba kerül.
Az idő korlátot jelenthet, mivel a csapat célja, hogy a lehető legtöbb forgatókönyvet tesztelje; az előttünk álló határidők függvényében ez valószínűleg nem fog minden lehetőséget lefedni.
A tesztelőknek a tesztek széles skáláját kell alkalmazniuk a különböző kategóriákban.
3. Stratégia alapú feltáró tesztelés
A stratégia-alapú tesztelés specifikus módszerek széles skáláját foglalja magában, beleértve a határérték-tesztelést, az egyenértékűségi technikákat, a kockázatalapú technikákat és még sok mást. Ez általában olyan tesztelőket részesít előnyben, akik már ismerik az alkalmazást, mivel ők olyan testre szabott stratégiákat tudnak kidolgozni, amelyek magukban foglalják ezeket az egyes módszereket.
A stratégia-alapú megközelítés elsősorban a szoftver funkcionalitására (és belső működésére) összpontosít, anélkül, hogy megvizsgálná azokat a lehetséges forgatókönyveket, amelyek a felhasználót a felmerülő problémákhoz vezethetik. Ez az alkalmazás és annak különböző jellemzői szélesebb körű elemzését eredményezheti, potenciálisan nagyobb mélységben, mint a különböző más megközelítések.
Kézi vagy automatizált feltáró tesztek?
A tesztelő csapatok manuálisan vagy automatizálva is végezhetnek feltáró ellenőrzéseket. Mindkét lehetőség hatalmas előnyökkel járhat; a megfelelő megoldás gyakran a projekt sajátosságaitól függ.
Kézi feltáró tesztelés
A kézi feltáró tesztelés lehetővé teszi a testre szabott ellenőrzések szélesebb körét. Bár ez hosszabb időt vehet igénybe, mivel az emberi tesztelők lassabbak a számítógépeknél, a kézi ellenőrzés fontos szerepet játszhat a felhasználói élmény meghatározásában.
A tesztelő nem csak azért dolgozik, hogy biztosítsa, hogy az alkalmazás minden funkciója úgy működik, ahogyan kell, hanem azért is, hogy meggyőződjön arról, hogy a felhasználók könnyedén tudják-e működtetni az alkalmazást. Ez talán a feltáró tesztelés leggyakoribb formája – bár ettől még nem feltétlenül a leghatékonyabb.
1. A feltáró tesztek manuális elvégzésének előnyei
A manuális feltáró tesztelés előnyei a következők:
Nagyobb hangsúly a használhatóságon
Az automatizált feltáró tesztek észrevehetnek eltéréseket a szoftverben, de nem biztos, hogy ugyanúgy tudják értelmezni ezeket a problémákat, mint egy emberi tesztelő.
Ez magában foglalja annak megértését, hogy a szoftver felhasználói valószínűleg hogyan navigálnak az alkalmazásban, illetve hogyan lépnek kapcsolatba vele, amit az automatizálás nem tud figyelembe venni.
A kézi feltáró tesztelők nagyobb szintű visszajelzést tudnak adni, beleértve konkrét részleteket arról, hogy az általuk talált problémák hogyan befolyásolják a szoftver általános működését vagy az általános felhasználói élményt.
Valós idejű változtatásokat végezhet
A feltáró tesztelés egyik fő erőssége, hogy a szükséges fejlesztések elárverezése előtt viszonylag gyorsan azonosítani lehet a tesztelés szükségességét, és viszonylag gyorsan végre lehet hajtani azt.
Az automatizált tesztelés általában sokkal gyorsabb folyamat, de a tesztelőknek meg kell várniuk, amíg minden elkészül, mielőtt változtatásokat eszközölnének – a kézi tesztelők ezt megtehetik, miközben a feltáró tesztelési folyamat még folyamatban van.
Ez azonban gyakran csak a szoftver kisebb részeit érintő hibák esetében lehetséges.
Nagyobb figyelem a részletekre
A feltáró tesztelés elsősorban arról szól, hogy új módszereket fedezzen fel az alkalmazás tesztelésére, miközben megérti azt; ez néha azt jelenti, hogy az egyik teszt a másikhoz vezet, ötleteket adva a tesztelőnek.
Az automatizált tesztek ezt nem feltétlenül veszik figyelembe, mivel a tesztelő csapat viszonylag kevés kézzel dolgozik. A manuális tesztelők folyamatosan fejlesztik a szoftverrel kapcsolatos ismereteiket, és új, de ugyanolyan fontos teszteket dolgoznak ki – de ez nehéz lehet, ha harmadik féltől származó szoftverek automatizálják ezeket.
A kódon kívüli hibák megtalálhatók
A kézi feltáró ellenőrzések lehetővé teszik a tesztelők számára, hogy az alkalmazás és a szoftver minden aspektusát megvizsgálják, beleértve magát a kódot is.
Sok automatizált megközelítés a kódra és annak működésére korlátozódik, ami azt eredményezheti, hogy a tesztelő csapatok nem veszik észre az alkalmazás más részein esetleg felmerülő problémákat.
Ez elsősorban az automatizálási szoftvertől függ, mivel egyes megoldások szélesebb körű megközelítést kínálnak a feltáró teszteléshez.
Biztosítja a minőséget a projekt során
Az automatizált feltáró ellenőrzések csak az alkalmazáson belüli hibákat és mérőszámokat keresik; a kézi tesztelők ehelyett megvizsgálhatják a szoftvert, és saját átfogó visszajelzést adhatnak.
Például tesztelhetik a kódot, és megállapíthatják, hogy az túl bonyolult – ez különösen fontos, mivel a halott kód lassíthatja a teljesítményt, de az automatizált folyamatok gyakorlatilag nem veszik észre.
A tesztelőnek a szoftverrel kapcsolatos ismeretei fontosak lehetnek a tesztelés más fázisai során felmerülő problémák diagnosztizálásában.
2. A manuális feltáró tesztelés kihívásai
A kézi feltáró tesztelés kihívásai a következők:
Emberi hibák lehetősége
Az automatizált feltáró tesztelés képes lefuttatni pontosan ugyanazt az ellenőrzést annyiszor, ahányszor csak szükséges, anélkül, hogy a pontos menetben bármilyen változás történne, biztosítva a következetességet és a megbízható eredményeket.
A kézi feltáró tesztelés ki van téve az emberi hibáknak, ami azt jelenti, hogy a tesztelő rossz értéket adhat meg. Általában lehetőség van e tesztek kétszeres ellenőrzésére és az esetleges eltérések kijavítására, mivel azok már első pillantásra is nyilvánvalónak tűnhetnek.
Egy hiba észlelése után azonban a teszt újbóli elvégzése több időt vehet igénybe.
Általában időigényesebb
Még ha a tesztelők minden feltáró ellenőrzést helyesen, emberi hibák nélkül végeznek is el, ez a teljes folyamat jelentős időt vesz igénybe az automatizált szoftverekhez képest, amelyek sokkal gyorsabban tudják kiszámítani a teszteket.
Ez minimum több órás különbség lehet; ez az idő a tesztelők számára az alkalmazás olyan részeire fordítható, amelyeknek az automatizálásból nem származik haszna.
A feltáró tesztek állandó felügyeletet is igényelnek, míg az automatizálás lehetővé teszi, hogy a tesztek egy éjszaka alatt fussanak.
Hosszú dokumentációs folyamat
Hasonlóan, a kézi tesztelés során és után a kézi dokumentáció felesleges terhet jelenthet a feltáró tesztelési folyamat számára.
Ez megnehezíti a változások és szoftvermódosítások időbeli nyomon követését – az automatizált szoftverek általában intuitív módon képesek ezt figyelembe venni a tesztek futtatásakor.
Ez egy újabb adminisztratív kérdés, amely időt és energiát von el más ügyektől, ami ténylegesen csökkenti a teljes szoftvertesztelési eljárás hatókörét és terjedelmét.
Alaposan ismernie kell a szoftvert
Bármilyen szintű kézi tesztelők megvizsgálhatják az alkalmazást, és alaposan tesztelhetik azt. Ez annak a munkának köszönhető, amelyet a szoftver megértésébe fektetnek – ez a feltáró folyamat első szakasza.
Ha azonban a tesztelő nehezen vagy egyáltalán nem tanulja meg, hogyan működik ez az alkalmazás, akkor valószínűleg nehezen fog tudni megfelelő teszteket kidolgozni és végrehajtani.
A szoftver jó ismerete lehetővé teszi a tesztelők számára, hogy a szokásos tesztelési paramétereken túlmutatóan dolgozzanak.
Költséges fenntartani
A kézi feltáró tesztelésre való hagyatkozás általában nagyobb tesztelői csapatot igényel, ami az automatizált ellenőrzésekhez képest magasabb hosszú távú költségeket eredményezhet. A harmadik féltől származó szoftver, amely ezeket a feltáró teszteket végzi, óriási értéket képviselhet, vagy akár teljesen ingyenes is lehet.
A feladatok összetettségétől függően a vállalatnak szüksége lehet magasan képzett, többéves tapasztalattal rendelkező tesztelőkre az alkalmazás teljes körű ellenőrzéséhez. Ez jelentősen megnövelheti a tesztelési költségeket az ingyenes automatizálási szoftverek használatához képest.
3. Mikor használjunk manuális feltáró tesztelést
A manuális feltáró tesztelés gyakran számos kihívással jár, de még mindig létfontosságú eleme az alapos szoftvertesztelésnek. Ennek oka, hogy vannak olyan aspektusai a szoftvernek, amelyeket az automatizálás nem tud teljes mértékben figyelembe venni, és amelyekre szintén nagy hangsúlyt kell fektetni.
A szoftverek például nem tudnak megbízhatóan visszajelzést adni a felhasználói felületekről vagy a felhasználói élménytesztekről. A tesztelők csak akkor kaphatnak jó képet arról, hogyan működik egy alkalmazás a gyakorlatban, ha kézzel tesztelik azt. Ez azt jelenti, hogy mind a fejlesztőknek, mind a tesztelő csapatoknak fontolóra kell venniük, hogy legalább bizonyos fokú manuális feltáró tesztelést integráljanak az ellenőrzéseikbe.
Automatizált feltáró tesztelés
Az automatizált tesztelés harmadik féltől származó szoftvert használ bizonyos ellenőrzések automatizálására – a tesztelők általában testre szabhatják ezt, hogy gyakorlatilag bármilyen tesztnek megfeleljen.
Ez azonban általában megköveteli, hogy a csapat legalább egyszer kézzel futtassa le az ellenőrzést, hogy az automatizációt kalibrálja. Ez jelentősen egyszerűsítheti a folyamatot mind a tesztelő, mind a fejlesztőcsapatok számára.
Bár a feltáró tesztek automatizálása szokatlan lehet, az alkalmazás és annak teljesítménye szempontjából számos egyértelmű előnye van.
1. A feltáró teszt automatizálás előnyei
A feltáró tesztek automatizálásának fő előnyei a következők:
Következetes tesztvégrehajtás
Az emberi hiba könnyen vezethet olyan tesztelési hibákhoz, amelyek kijavítása időbe és pénzbe kerül; az automatizált feltáró ellenőrzések lehetővé teszik a tesztelő csapatok számára, hogy megkerüljék ezt a problémát.
A tesztelők hatékonyan tanítják meg az automatizálási szoftvert arra, hogyan kell helyesen végrehajtani egy tesztet, biztosítva, hogy az minden alkalommal ugyanúgy végezze azt. Ez javítja a tesztek általános megbízhatóságát, és csökkenti a fejlesztők által az eredményekre várakozással töltött időt – különösen azért, mert a tesztelők könnyedén beállíthatják, hogy a tesztek egy éjszaka alatt is fussanak.
Mindenki számára időmegtakarítás
Az automatizált tesztek segítségével a fejlesztők sokkal gyorsabban kezdhetnek el dolgozni a problémák kijavításán, miközben a tesztelők a feltáró ellenőrzések szélesebb körére terjedhetnek ki. A csapat a határidőtől függetlenül csak korlátozott számú forgatókönyvvel tud számolni, ezért fontos, hogy a tesztelők a lehető legtöbb ellenőrzést illesszék be a megengedett időkeretbe.
Az automatizálás azáltal segít, hogy ezeket a feltáró teszteket sokkal gyorsabban végzi, mint a kézi tesztelők.
Költséghatékony megközelítés
A csapat által választott szoftvertől függően az automatizálás sokkal költséghatékonyabb lehet, mint a kézi tesztelés – akár ingyenes is lehet.
Bár a manuális tesztelők felvétele továbbra is kritikus, és néhányuk feladata lesz az automatizálási eljárások kalibrálása, a lehető legtöbb feltáró teszt automatizálása lehetőséget ad a vállalatnak a személyzeti költségek csökkentésére.
Ha a csapat megérti az automatizálási szoftvert, akkor azt a feladatok széles köréhez tudják igazítani.
Alkalmazható több eszközhöz
A manuális teszteléshez szükség lehet olyan munkatársakra, akik különböző eszközökön szerzett tapasztalattal rendelkeznek, például mobilalkalmazás esetén a különböző telefonos operációs rendszerek, köztük az Android és az iOS ismeretével.
Az automatizált szoftverek képesek ezt figyelembe venni, és több eszközön keresztül tesztelni, hogy az alkalmazás következetesen jól teljesítsen. Az ezeket az eszközöket ismerő tesztelő csapatok unalmasnak találhatják a folyamatot; az automatizálás ismét képes racionalizálni a szokásos feltáró tesztelési folyamatokat, és minden egyes iterációt egyszerre tesztelni.
Újrafelhasználható szkriptek
Ha a csapat ugyanannak a szoftvernek több verzióját vagy akár több, hasonló architektúrájú vagy funkciójú terméket tesztel, a szkripteket egyik tesztelési ciklusból a másikba újra lehet használni.
Ha a kompatibilitás biztosításához bármilyen módosításra van szükség, a kézi tesztelők sokkal gyorsabban el tudják végezni ezeket, mintha egy teljesen új szkriptet írnának.
Az automatizálás a feltáró tesztelési folyamat gyakorlatilag minden szakaszát optimalizálja, és a különböző szoftverkonfigurációkban könnyen beállítható.
2. A feltáró tesztek automatizálásának kihívásai
Ez a folyamat különböző kihívásokkal is jár, mint például:
Csak a tesztelés egyik oldalát képviseli
Az alkalmazás tesztelése során nem praktikus vagy bölcs dolog minden ellenőrzést automatizálni, mert vannak olyan szempontok, amelyekről csak egy kézi tesztelő tud megbízható visszajelzést adni.
Ez magában foglalja a felhasználói élményt is, bár a választott szoftvertől függően lehetséges lehet, hogy automatizálással alapos teljesítmény- és terhelésvizsgálati elemzést kapjon.
A feltáró tesztek automatizálása nélkülözi az emberi ítélőképességet, és bizonyos ellenőrzéseknél a legjobb, ha egy kézi tesztelő mellett működik.
Irreális elvárások a képességekkel kapcsolatban
Hasonlóan, az automatizált feltáró tesztelési eljárások az egész projekt mellett az alkalmazás számára is óriási előnyökkel járhatnak.
Ez a megközelítés azonban nem mindig jelent megoldást. Azok a szervezetek, amelyek minden egyes fázisban nagymértékben az automatizálásra támaszkodnak, hiányos képet kaphatnak a szoftverről.
Az automatizálás azonosítja a problémákat, de a tesztelő és fejlesztő csapatok felelősek azok kijavításáért. Fontos meghatározni egy átfogó automatizálási stratégiát, hogy a projektben mindenki tisztában legyen annak lehetőségeivel és korlátaival.
Magasabb képzettségi követelmények
Az automatizálás jellemzően magában foglalja az összetett ellenőrzések végrehajtásának ismeretét, valamint azt, hogy hogyan kell programozni és ténylegesen automatizálni azokat. Ehhez gyakran többéves szkriptírói tapasztalatra van szükség, bár az automatizálási szoftverek jelentősen segíthetnek e folyamatok optimalizálásában.
A hatékony automatizálás elősegítése érdekében kritikus fontosságú, hogy a vállalat változatos és erős készségekkel rendelkező tesztelőket vegyen fel.
Az automatizálásban jártas tesztelők azt is tudják, hogy milyen funkciókat kell előtérbe helyezni, miközben a rendelkezésre álló harmadik féltől származó szoftverek közül választanak, így biztosítva, hogy a csapat jó terméket kapjon.
Helytelen stratégiák és kommunikáció
A koherens stratégia kommunikálása minden sikeres automatizáláshoz elengedhetetlen; a fejlesztőknek, a tesztelőknek és még a projektmenedzsereknek is egy oldalon kell állniuk a tesztelés során.
A csapatoknak együtt kell dolgozniuk, hogy meghatározzák a közelgő eljárások terjedelmét és ütemezését. Ez minden tesztelési folyamatra igaz, de különösen fontos az automatizálással járó összetettség miatt. A jobb kommunikációs vonalak és az információs silók hiánya lehetővé teszi, hogy a csapatok hatékonyabban végezzék a teszteket.
A megfelelő automatizálási szoftver kiválasztása
Az automatizálás általában egy olyan harmadik féltől származó alkalmazás kiválasztását jelenti, amely kompatibilis a csapat tesztelési céljaival. Minden opciónak más-más árazási tervei és funkciói vannak. Ez jelentős hosszú távú költséget jelenthet, még akkor is, ha a szoftver sikeresen végrehajtja az automatizált teszteket, miközben jelentős értéket nyújt.
Számos ingyenes lehetőség van, amelyek a prémium alternatívákhoz hasonló lenyűgöző funkcionalitást kínálnak. Alapvető fontosságú, hogy a tesztelő csapat minden rendelkezésre álló lehetőséget megvizsgáljon, beleértve az ingyenes szoftvereket is.
Következtetés: Feltáró teszt automatizálás vs. manuális feltáró tesztelés
Kevés olyan projekt van, amely teljes mértékben manuális vagy teljesen automatizált tesztelésből profitál, mivel mindenféle alkalmazás jobban teljesít a kettő kombinációjával.
Míg az automatizált tesztek optimalizálhatják a folyamatot a fejlesztő és minőségbiztosítási csapatok számára, a tervezés egyes aspektusai manuális feltáró tesztelést igényelnek; ez az egyetlen módja annak, hogy a felhasználók számára tudatos visszajelzést kapjunk.
Idővel egyre több szervezet dolgozik a hiperautomatizálás megvalósításán, amely folyamat célja az automatizálás intelligens maximalizálása, biztosítva az üzlet hatékony stratégiáját – ez továbbra is létezhet a manuális tesztelés mellett.
Az automatizált tesztelés egyre elérhetőbbé válik a vállalatok számára az automatizálási szoftverek növekvő elterjedtségének köszönhetően, különösen a számos ingyenes, rengeteg funkcióval rendelkező lehetőséggel. Ez megkönnyíti a cégek számára a kombinált manuális/automatizált feltáró tesztelési megközelítés alkalmazását.
Az Agile (egy olyan projektmenedzsment-technika, amely a fokozatos, de jelentős előrehaladásra összpontosít) növekvő népszerűsége a fejlesztésben szintén szerepet játszott, mivel rövid tesztelési ciklusokat igényel. Egy kombinált tesztelési stratégia megfelelhetne ennek és számos más fejlesztési stratégiának, például a folyamatos integrációnak, amely hasonlóan ismételt tesztelést tesz szükségessé a siker biztosítása érdekében ugyanazon szoftver számos iterációja során.
Amire a feltáró tesztelés megkezdéséhez szüksége van
A feltáró tesztelés előfeltételei a következők:
1. Egyértelmű tesztelési célok
Bár a feltáró tesztelés a szabadság szinonimája, és néha összekeverik az ad hoc teszteléssel, ez mégis konkrét szabályokat vagy meghatározható célokat követ. A minőségbiztosítási csapat csak úgy tud sikeresen eligazodni szinte bármilyen tesztelési struktúrában, ha ismeri az egyes tesztek várható eredményét, különösen mivel a tesztelők általában maguk tervezik ezeket az ellenőrzéseket.
2. Kreatív, intuitív tesztelők
A feltáró tesztelés olyan új és kreatív tesztek tervezésére összpontosít, amelyek feltárhatják az alkalmazással kapcsolatos problémákat. Még a korlátozott tapasztalattal rendelkező tesztelők is képesek erre, feltéve, hogy értik a szoftvert.
Fontos, hogy a tesztelők megértsék az alkalmazást és annak működését; ez lehetővé teszi számukra, hogy intuitív módon hasznos ellenőrzések sorát dolgozzák ki.
3. Koherens dokumentáció
A tesztelés minden típusának erős dokumentációval kell rendelkeznie, hogy a csapat minden tagja kövesse az elvárt tesztelési ütemtervet, és hogy senki ne ismételje meg véletlenül az ellenőrzést.
Ez létfontosságú szempont az egy részlegen belüli és több részlegen átívelő kommunikációban, például a fejlesztők rendszeres tesztelési frissítéseket igényelnek, hogy kitalálják, hogyan javítsák ki a problémákat.
4. A vásárló szemszögéből
A feltáró tesztelés számos stratégiát és forgatókönyvet foglal magában, beleértve azokat is, amelyek azt tükrözik, hogy a felhasználók hogyan fognak gyakorlatilag kapcsolatba lépni az alkalmazással. Létfontosságú, hogy a tesztelő csapatok ezt figyelembe vegyék az ellenőrzések során, még akkor is, ha nem forgatókönyv-alapú teszteket végeznek.
Ennek elfogadása lehetővé teszi a tesztelő számára, hogy a tesztelést különböző nézőpontokból közelítse meg, javítva ezzel az ellenőrzések minőségét.
5. Automatizált tesztelési szoftver
Mivel a csapat valószínűleg automatizálni tudja az általuk tervezett tesztek jelentős részét, fontos, hogy a végrehajtási szakasz előtt jó minőségű automatizált tesztelési szoftvert tudjanak beszerezni.
A fejlesztők és a tesztelő csapat a projektről szerzett ismereteik alapján meghatározhatják, hogy melyik harmadik féltől származó alkalmazás felel meg a saját igényeiknek.
Feltáró tesztelési folyamat
A feltáró tesztelés konkrét lépései a következők:
1. A vizsgálati eljárás osztályozása
A feltáró tesztelés első lépése az, hogy az érintett csapattagok megértsék, hogyan közelíthetik meg ezeket az ellenőrzéseket, például a gyakori hibák osztályozásával és a gyökeres okok elemzésével.
Itt a tesztelők maguk dolgozzák ki a tesztekkel kapcsolatos ötleteiket; a pontos módszertantól függően a tesztelési szabályzatot is megtervezhetik.
Ez határozza meg az adott ülés vagy munkanap hatókörét és tesztjeit.
2. A tesztek megkezdése
Bár a pontos paraméterek (például az egyes tesztek vagy a teljes munkamenet időtartama) a csapat saját preferenciáitól és a projekt követelményeitől függnek, minden feltáró tesztelés követ bizonyos közös vonásokat.
A megfelelő ellenőrzések osztályozását követően a minőségbiztosítási személyzet megkezdi a vizsgálatok elvégzését és az eredmények rögzítését.
Ha az ellenőrzések automatizálást igényelnek, a tesztelők beállíthatják ezt éjszakai munkára, vagy napközben maguk is felügyelhetik.
3. Az eredmények áttekintése
A következő lépés az eredmények felülvizsgálata, összehasonlítva azokat az alapértelmezett és a várt eredményekkel. Ha ezek a tesztek bármilyen jelentős, váratlan eltérést eredményeznek, a tesztelők megismételhetik az ellenőrzést, vagy azonnal elkezdhetik kitalálni, hogyan lehetne ezt kijavítani. A fejlesztőknek tett javaslataik fontosak lehetnek a helyes megközelítés meghatározásában – és a hibajelentéseik ezt részletesen kifejthetik.
4. A teszt eligazítása
A teszteredmények elárverezése után a minőségbiztosítási csapat elkezdi felülvizsgálni magát a tesztelési eljárást, és ennek alapján megállapítja, hogy a feltáró tesztelési megközelítésük megfelelő volt-e.
Ez a vizsgálati összefoglaló jelentés akár azt is megállapíthatja, hogy az ellenőrzések során olyan működési hibák merültek fel, amelyek miatt meg kell ismételni a vizsgálatot. A tesztelő csapat azt is ellenőrizheti az alkalmazást, hogy a fejlesztők kijavítják-e ezeket a problémákat, hogy megállapítsák, sikeresen megoldották-e a feladatot.
Legjobb gyakorlatok a feltáró teszteléshez
A feltáró tesztelés leghatékonyabb gyakorlatai a következők:
1. A tesztelők párosítása
A feltáró tesztelés számos formája profitál a tesztelők közös munkájából – ez tovább egyszerűsíti a folyamatot, és lehetővé teszi ugyanazon ellenőrzések többféle nézőpontból történő vizsgálatát.
A páros teszteléssel elkerülhető az alagútlátás lehetősége is, ami kreatívabb teszttervezésre ösztönöz.
Ha többen dolgoznak ugyanazon a teszten, az összességében nagyobb pontosságot eredményezhet, és a munkaterhelés megosztása az egész csapat számára sokkal gyorsabbá teszi a tesztelést.
2. Kézi és automatizált tesztek keverése
Egyes vállalatok még mindig küzdenek az automatizálás bevezetésével, míg mások túlzásba viszik azt, még akkor is, ha a manuális perspektívák előnyösebbek lennének. Ezen ellenőrzések együttes kiegyensúlyozása lehetővé teszi a tesztelő csapat számára, hogy több alapot fedjen le, és biztosítsa a minőséget az egész alkalmazásban, beleértve az olyan szubjektívebb szempontokat is, mint a szoftver interfésze.
A manuális és automatizált tesztek együttes elvégzése az egyetlen módja annak, hogy minden funkció vagy funkció teljes tesztlefedettségét garantáljuk.
3. A piac megértése
Fontos, hogy a tesztelők a tesztelési folyamat során ismerjék a célközönséget és a versenytársakat is; ez segít nekik felmérni, hogy az emberek valószínűleg hogyan reagálnak majd az alkalmazás jelenlegi funkcióira.
Bizonyos funkciók iránt nagy az igény, és a tesztelő csapat számára előnyös lehet, ha ezeket az ellenőrzések során prioritásként kezeli. Bár széleskörű tesztelési lefedettséget is fenn kell tartaniuk. Ez meghatározhatja a tesztelés irányát, valamint a szoftver potenciális sikerét a bevezetéskor.
4. Valódi eszközök használata a teszteléshez
A szoftvertesztelő csoportok emulátorokat használhatnak a feltáró ellenőrzések megkönnyítésére; ez hasznos lehet, de ritkán tükrözi a gyakorlati felhasználói környezetet.
A valódi eszközök a valósághűbb élmény létrehozásával javítják a feltáró tesztelés megbízhatóságát – az emulátorok tökéletlenek, és olyan hibákat tartalmazhatnak, amelyek az ügyfeleknél nem fordulnak elő.
Az emuláció gyors módja a több platform tesztelésének, de nem helyettesíti a tényleges eszközöket.
A feltáró tesztek kimeneteinek típusai
A tesztelők különböző kimeneteket kaphatnak az ellenőrzés elvégzése után, többek között:
1. Vizsgálati eredmények
Maguk az eredmények sokféle formát ölthetnek, mivel a feltáró tesztelés több száz egyedi tesztet foglalhat magában. Ezek az eredmények teszik ki a tesztelési rutin kimeneteinek nagy részét, és létfontosságú információkat nyújtanak az alkalmazás állapotáról és arról, hogy képes-e kielégíteni a felhasználói igényeket.
A tesztelők ezen eredmények kézhezvételekor újra ellenőrizhetik a rendszert és érvényesíthetik az információkat, hogy meghatározzák a következő lépéseiket.
2. Tesztnaplók
Az alkalmazás saját naplói gyakran mutatják a tesztelési folyamat során felmerülő hibákat és problémákat; ezek adják a legerősebb támpontokat arra vonatkozóan, hogy a szoftver miért bukott meg egy tesztelésen. A vezető tesztelők különösen jártasak az alkalmazás naplóinak értelmezésében, így azonosítani tudják a bonyolult problémák okát.
Minél több információt gyűjtenek a tesztelők ezekből a naplókból, annál többet tudnak segíteni a fejlesztőknek.
3. Tesztjelentések
A csapat automatizálási eljárásától függően a kimenetük automatikusan hibajelentést generálhat. Ez tartalmazza az alkalmazásban előforduló hibákat, esetleg azok okait és minden egyéb, a fejlesztők számára fontos adatot.
A tesztelők ezt arra használhatják, hogy saját véleményüket fejtsék ki arról, hogy a szoftver készen áll-e a bevezetésre, amit általában go/no-go döntésnek neveznek.
Példák a feltáró tesztelésre
Íme három példa arra, hogyan használhatja egy vállalat a feltáró tesztelést:
1. Egy mobil játékalkalmazás
Ha egy játékgyártó cég nagyobb frissítést kíván kiadni egy mobilalkalmazáshoz, a feltáró tesztelők ellenőrizhetik a régi és az új funkciókat, hogy megállapítsák, hogy az alkalmazás még mindig stabil-e. Ez olyan mértékben megnövelheti a szoftver összetettségét, hogy az bizonyos eszközökön nem fut.
A tesztelők azon dolgoznak, hogy minimalizálják ennek hatásait, miközben a lehető legtöbb platformon biztosítják a használhatóságot.
A feltáró tesztelők alaposan ellenőrzik a játékot és annak számos bonyolult forgatókönyvét, hogy megbizonyosodjanak arról, hogy minden funkció a tervezett módon működik; ez a folyamat általában kézi tesztelőt igényel.
2. A szolgáltató honlapja
A weboldalakat feltáró tesztelésnek is alávetik, hogy megbizonyosodjanak arról, hogy mind a felhasználók, mind a személyzet számára működnek, így a tesztelők a weboldalra való bejelentkezéssel kezdhetik. Ez teszteli, hogy a webhely képes-e új felhasználói profilokat létrehozni, és ellenőrzi, hogy a felhasználók nem férnek-e hozzá a rendszergazdai funkciókhoz.
A tesztelők ezután a szolgáltatás ellenőrzésére lépnek, ami lehet időpontfoglalás vagy rendelés formájában. Ezután befejezik a vásárlást, hogy megbizonyosodjanak a pénztár megfelelő működéséről, majd megnézik a megrendelés e-mail visszaigazolását és a fiók előzményeit.
3. A kórház irányítási rendszere
A feltáró tesztelés mindenféle alkalmazás és rendszer számára hasznos lehet. Kórházi irányítási rendszerek esetében a tesztelő megvizsgálhatja, hogy a fizetési modul hogyan működik együtt más funkciókkal.
A magasabb szintű integráció szigorú tesztelés nélkül jelentős hibákhoz vezethet. Ezek az ellenőrzések magukban foglalhatnak egy architektúra-diagramot, amely nyomon követi a rendszer számos összetevőjét és azok kapcsolódási pontjait.
A tesztelők megvizsgálják a rendszer korábbi iterációinak problémáit is, és kifejezetten azt tesztelik, hogy ezek még mindig jelen vannak-e, és gyors intézkedéseket hoznak, ha hibát fedeznek fel.
A feltáró teszteléssel feltárt hibák és hibák típusai
A feltáró tesztelés során a tesztelők a következő hibákat fedezhetik fel:
1. Összeegyeztethetetlen jellemzők
Előfordulhat, hogy az alkalmazás egyes funkciói nem a várt módon működnek együtt, ami ahhoz vezethet, hogy a felhasználók nem tudják befejezni a vásárlásokat vagy használni az alkalmazást. A tesztelők a funkciókat külön-külön és egymással együtt is ellenőrzik, hogy megbizonyosodjanak arról, hogy minden illeszkedik-e egymáshoz.
2. Helytelen UI tervezés
Egy alkalmazás felhasználói felülete határozza meg, hogy valaki pontosan hogyan használja a szoftvert. Ha például a fontos funkciók nem nyilvánvalóak az ügyfelek számára, előfordulhat, hogy nem veszik észre, hogy ezek a funkciók léteznek, ami korlátozza az alkalmazás élvezetét.
A manuális felhasználói felület tesztelése azonosítja és kijavítja a felhasználóbarát kialakítást.
3. Hitelesítési hibák
Számos alkalmazás és weboldal lehetővé teszi egy bizonyos jogosultságokkal rendelkező felhasználói profil létrehozását. Létfontosságú, hogy a tesztelők ellenőrizzék, hogy az átlagos felhasználók nem férnek-e hozzá érzékeny adatokhoz vagy akár adminisztrációs funkciókhoz, miközben a szoftvert váratlan módon használják.
4. Halott kód
A tesztelők még mindig találhatnak elavult kódot az alkalmazásban, ami akár a jelentős teljesítményproblémák oka is lehet. A holt kód túlbonyolítja az alkalmazás belső működését, és elkerülhető hibákat okozhat. Ennek felismerése és optimalizálása a szoftverek érzékenyebbé teszi a személyzet és a felhasználók számára.
Közös feltáró tesztelési metrikák
A szokásos mérőszámok, amelyekkel a tesztelők a feltáró tesztek során találkozhatnak, a következők:
1. Teljesítményvizsgálati mérőszámok
A feltáró tesztek, amelyek az alkalmazás általános teljesítményét vizsgálják, a mérőszámok széles skáláját eredményezhetik. Ez magában foglalhatja a minimális, átlagos és maximális válaszidőt, valamint a hiba- és sikerességi arányokat a stabilitás meghatározásához.
2. Tesztlefedettségi mérőszámok
A tesztek lefedettsége azért fontos, mert ez határozza meg, hogy a tesztek az alkalmazás hány kategóriáját és aspektusát fedik le. A követelmények lefedettségének százalékos aránya például azt értékeli, hogy vannak-e olyan funkciók, amelyek további tesztelési köröket igényelnek.
3. A vizsgálat általános hatékonysága
A sikeres és sikertelen ellenőrzések számának nyomon követése segít a tesztelőknek kideríteni az alkalmazás általános állapotát. Ezen felül a csapat nyomon tudja követni, hogy az észlelt hibák közül hány kritikus hiba van.
4. A hibák eloszlása
Hasonló módon a hibaeloszlás ellenőrzése megmutatja a hibákra leginkább hajlamos komponenseket vagy funkciókat. Ezek lehetnek az alkalmazás olyan részei, amelyek gyakran kölcsönhatásba lépnek másokkal, ezért fontos, hogy ezeket a teszteket prioritásként kezeljük.
5. Regressziós metrikák
A feltáró regressziós tesztelés lehetővé teszi a tesztelők számára, hogy megnézzék, hogyan viselkednek ugyanannak a szoftvernek a különböző iterációi, és ez hogyan befolyásolhatja a teljesítményt.
A hibák beadási aránya és az egy építésre jutó hibák a konkrét mérőszámok, amelyek segítenek ebben.
Tisztázzuk a félreértéseket: Ad Hoc tesztek: Feltáró tesztelés vs. Ad Hoc tesztek
A tesztelői szabadságra való nagy hangsúlyt fektetve egyesek gyakran összekeverik a feltáró tesztelést az ad hoc teszteléssel. A két formátum számos alapvető hasonlóságot mutat, de végső soron különböző célokat szolgál.
1. Mi az ad hoc tesztelés?
Az ad hoc tesztelés egy teljesen strukturálatlan megközelítés, amely szakít a hagyományos teszttervezéssel, hogy olyan hibákat találjon, amelyek máskülönben nem derülnének ki.
A tesztelés ezen formája jellemzően nem tartalmaz dokumentációt, ami megnehezíti a problémák reprodukálását, kivéve, ha a tesztelő teljesen biztos az okban.
Ennek egyik példája a „majomtesztelés”, egy olyan ellenőrzés, amely véletlenszerű bemeneteket tartalmaz, és végső soron a rendszer meghibásodását célozza.
A feltáró teszteléshez hasonlóan sok ad hoc tesztelő párban végzi el ezeket az ellenőrzéseket; ez növeli a megbízhatóságot. Az ad hoc megközelítés hasznos lehet a formális tesztek végrehajtása után, hogy az ellenőrzések minden lehetőséget figyelembe vegyenek; ez akkor is segít, ha kevés idő áll rendelkezésre a további tesztelésre. Megfelelő végrehajtással az ad hoc tesztek rendkívül hasznosak.
2. A feltáró tesztelés és az ad hoc tesztek közötti különbségek
Az ad hoc tesztelés általában nem tartalmaz formális dokumentációt. Ez éles ellentétben áll a feltáró vizsgálatokkal, ahol az ellenőrzések rögtönzött jellege még fontosabbá teszi a nyilvántartás vezetését.
A feltáró tesztek a formális tesztelési technikák szélesebb választékát alkalmazzák, míg az ad hoc ellenőrzések ezt a hagyományos tesztelési etikettől való eltéréssel kerülik el. Ez segít nekik felfedezni olyan hibákat, amelyeket a tesztelők egyébként soha nem találnának meg.
A feltáró tesztelésnek világos céljai és határai vannak, de a csapattagok számára mégis lehetővé teszi a kreatív tesztek alkalmazását. Az ad-hoc teszteknek általában nincsenek meghatározható végcéljaik azon túl, hogy a szoftvert bármilyen módon is nyomják. Az ad hoc tesztelés gyakran a szoftver és funkcióinak előzetes ismeretét is magában foglalja, míg a feltáró tesztelés az alkalmazás megismerését a szokásos folyamatokba építi be.
Feltáró tesztelés az agilis tesztelésben
Az agilis módszertan erősen támogatja a folyamatos fejlesztést. Ez azt jelenti, hogy jól párosítható a feltáró tesztekkel, különösen a gyakori szoftverfrissítések iránti igény növekedésével.
A feltáró tesztelés és az agilis tesztelés kombinálása erősebb tesztelési struktúrát biztosíthat a csapattagoknak azáltal, hogy a kiadástervezést és a sprintek végrehajtását beépítik az ütemtervükbe. Az agilis technikákat alkalmazó vállalat ezt még jobban kiaknázhatja, ha feltáró teszteléssel párosítja; ez egy nagyszerű módja az alkalmazás minden egyes szoftverkomponensének tesztelésére. Mivel a tesztelők szkriptek nélkül végezhetnek feltáró ellenőrzéseket, ez mind a minőségbiztosítási személyzetnek, mind a fejlesztőknek sok értékes időt takarít meg.
Az automatizált feltáró tesztelés fokozza ezeket a megtakarításokat, segítve a vállalatokat abban, hogy sokkal gyorsabban, akár egyik napról a másikra ellenőrizzék alkalmazásuk legújabb iterációit. A feltáró ellenőrzések gyors, használható eredményeket hoznak, és a fejlesztők a következő sprint részeként intézkedhetnek a szükséges változtatásokról.
A kézi feltáró tesztelés még mindig számos előnnyel jár az agilis teszteléssel együtt, mivel képes azonosítani olyan problémákat, amelyeket az automatizált megközelítés kihagyhat. A tesztelés más formái egyszerűen túl sokáig tartanak, vagy túl kevés előnyt nyújtanak ahhoz, hogy kényelmesen illeszkedjenek az agilis keretrendszerbe. A feltáró ellenőrzésekkel biztosítható, hogy minden egyes agilis szakasz jelentősen javítsa a szoftvert és annak funkcionalitását.
7 hiba és buktató, amit el kell kerülni a feltáró tesztek végrehajtása során
Íme hét gyakori hiba, amelyet a vállalatok gyakran elkövetnek a feltáró tesztek végrehajtása során, valamint az, hogy a cégek hogyan kerülhetik el ezeket a problémákat:
1. Kiegyensúlyozatlan manuális/automatizált tesztelés
Annak kitalálása, hogy mely tesztek működnek a legjobban a kézi ellenőrzésekkel, és melyek azok, amelyeknél az automatizálás előnyös lenne, időbe telik, de a csapatok sokkal hatékonyabban tesztelhetnek.
Ha túl sok tesztet automatizálunk, az emberi tesztelő hiánya miatt az alkalmazás nehézkes vagy nem felhasználóbarát lehet.
2. Időbeli korlátok
A feltáró tesztelés gyorsabb, mint a tesztelés számos más formája, de a projekt határidőinek realitása azt jelenti, hogy a csapat még mindig csak korlátozott számú tesztet tud elvégezni.
Az időgazdálkodás és a tesztelés lefedettsége iránti elkötelezettség segít a tesztelő csapatnak a lehető legtöbb ellenőrzést elvégezni számos széles kategóriában.
3. Rugalmatlan tesztelők
Bár a feltáró tesztelőknek nincs szükségük előzetes szoftverismeretre vagy különösen mélyreható készségekre, az ellenőrzések mégis az egyes csapattagok képességeire és kezdeményezőkészségére támaszkodnak.
A projektmenedzsernek bölcsen kell kiosztania ezeket a tesztelési szerepeket, és szükség esetén a csapat kreatívabb és intuitívabb tagjainak kell fenntartania őket.
4. A hibák megismétlésének nehézségei
Nem mindig nyilvánvaló, hogy mely műveletek járulnak hozzá a teszt sikertelenségéhez; az is lehet, hogy nem egyértelmű, hogy az alkalmazás mely aspektusai a hibásak.
Ezért számos feltáró megközelítésben a tesztelők párosítása vagy akár a tesztelő képernyőjének közvetlen rögzítése is szerepel, hogy jobban megértsük a problémákat és azok pontos okait.
5. Nem egyértelmű dokumentáció
Akár egy automatizált hibajelentésről, akár az elvégzett tesztek kézi feljegyzéséről van szó, a jó dokumentáció megkönnyíti a fejlesztők számára, hogy a tesztelő csapat megállapításai alapján cselekedjenek.
A tesztelő csapatnak minden egyes ellenőrzés során el kell köteleznie magát a magas színvonalú nyilvántartás biztosítása mellett, a lehető legrészletesebb adatokat nyújtva minden egyes jelentéshez.
6. Magas elvárások
A feltáró tesztelés szinte minden szoftverprojekt számára hasznos, de még mindig korlátozott a hatókörében – a legjobban más tesztelési módszerekkel együtt működik.
A tesztelő csapatoknak ezeket az ellenőrzéseket a szokásos szkriptelt tesztek mellett kell elvégezniük; ez az egyetlen módja annak, hogy a minőségbiztosítási részlegek következetesen széles körű tesztlefedettséget biztosítsanak.
7. Helytelen automatizálás
Fontos, hogy a tesztelő csapat és a projektmenedzser megértse, hogy melyik automatizálási szoftver nyújtja a legtöbb előnyt az adott alkalmazás számára.
A különböző harmadik féltől származó opciók saját egyedi jellemzőket kínálnak, így a csapat választása meghatározhatja a robotizált folyamatautomatizálás sikerét; minden lehetőséget mérlegelniük kell, ami előttük áll.
5 legjobb ingyenes feltáró tesztelési eszköz
Az öt legjobb feltáró tesztelési eszköz, amelyet a minőségbiztosítási csapatok ingyenesen használhatnak, a következő:
1. ZAPTEST FREE Edition
A ZAPTEST Free prémium szintű funkciókat kínál teljesen ingyen, így bármely szervezet számára lehetővé teszi, hogy élvezze az egyszerű feltáró tesztek megvalósításának előnyeit.
Ez az alkalmazás az innovatív 1SCRIPT technológiával bármilyen platformot, eszközt és böngészőt képes automatizálni.
A ZAPTEST rugalmas RPA-automatizálást is biztosít, így ezt kombinálhatja a manuális megközelítéssel.
2. XRAY feltáró alkalmazás
Az XEA lehetővé teszi a felhasználók számára, hogy átfogó tesztelési terveket hozzanak létre, és könnyen rögzítsék az előrehaladásukat, egyszerűsítve ezzel a feltáró tesztelés hibajelentési szakaszát.
Ez a lehetőség teljes mértékben a felhasználó szemszögére összpontosít, és egy központosított eredményközpontot kínál a többi tesztelő frissítéséhez.
Az XRAY azonban jelenleg nem rendelkezik integrált automatizálással, ami korlátozhatja hosszú távú hatékonyságát.
3. Bogár mágnes
Az alapos feltáró tesztelést kínáló böngészőbővítmény, a Bug Magnet lehetővé teszi a tesztelők számára az éles esetek és más problémás értékek ellenőrzését.
Ez a bővítmény emellett lehetővé teszi álszövegek, e-mail címek és többféle karakterkészlet egyszerű integrálását is.
Ez azonban csak Firefox és Chrome alapú böngészőkhöz érhető el, így kevésbé sokoldalú választás, mint a versenytársai.
4. Azure teszttervek
Az Azure Test Plans a Microsoft Azure platformjának kulcsfontosságú része, és lehetővé teszi a tesztelők számára, hogy számos forgatókönyvre vonatkozóan gazdag adatokat rögzítsenek.
Ez a lehetőség asztali és webes alkalmazásokhoz egyaránt alkalmas, miközben végponttól végpontig tartó nyomon követhetőséget biztosít, amely egyértelműen rögzíti a szoftver fejlesztését.
Ez a megközelítés azonban gyakran mélyebb integrációt igényel az Azure-rel, ezért a rugalmasság rovására megy.
5. Testiny
A Testiny a kézi feltáró tesztelésre specializálódott, és egy intelligens szerkesztőt kínál, amely lehetővé teszi a tesztelők számára, hogy az ellenőrzéseket fa struktúra segítségével tervezzék meg a maximális rugalmasság érdekében.
A teljes elszámolhatóság és nyomon követhetőség biztosítása érdekében a futtatás vagy a teszteset minden módosítása az alkalmazás előzményeiben marad.
Ez azonban csak kis csapatok és nyílt forráskódú projektek számára ingyenes.
Mikor érdemes Enterprise vs. Free Exploratory Test eszközöket használni?
Noha a feltáró tesztelés kifizetődő befektetés, és a prémium alkalmazások általában nagyobb funkcionalitást kínálnak, számos ingyenes lehetőség is van, amelyek több mint elegendő funkciót biztosítanak.
A feltáró tesztelés jelentős működési költséget jelenthet, ha elkötelezi magát egy prémium modell mellett, de nem minden szoftverfejlesztő cégnek vagy csapatnak van erre pénze. A legjobb harmadik féltől származó szoftver kiválasztása gyakran a cég egyedi követelményeitől függ.
Előfordulhat, hogy az adott projekt igényeit csak egy fizetős megoldás elégítheti ki; a csapatnak meg kell vizsgálnia a különböző lehetőségeket, mielőtt elkötelezné magát egy alkalmazás mellett.
A kisebb csapatokkal rendelkező vállalatok számára a legnagyobb előnyöket az ingyenes tesztelési eszközök jelenthetik, mivel számos lehetőség korlátozott számú felhasználó számára ingyenes.
Alternatívaként választhatnak olyan lehetőségeket is, amelyek nem tartalmazzák ezt a korlátozást, és amelyek képesek a tesztelőcsoport méretarányának megfelelő méretezéshez igazodni. Ez még életképesebbé teheti a feltáró tesztelők párosítását a pontosabb eredmények biztosítása érdekében – a csapatnak természetesen kevesebb felhasználói profilra lesz szüksége.
Sok szolgáltatás kínál ingyenes próbaverziót a szoftverükből, hogy a szervezetek megnézhessék, megfelel-e az igényeiknek; ezek általában csak néhány hétig tartanak.
Felderítő tesztelés ellenőrzőlista, tippek és trükkök
A tesztelők számos további tippet is figyelembe vehetnek a feltáró ellenőrzések megkezdésekor, többek között:
1. Ossza fel a funkciókat és modulokat megfelelően
A félreértések elkerülése érdekében a tesztelő csapatoknak egyértelmű listát kell készíteniük minden egyes funkcióról és a lefuttatni kívánt ellenőrzésekről. Ez azt is jelenti, hogy a tesztek megfelelően eloszlanak a szoftverfunkciók között.
A legjobb eredmények érdekében kiemelkedően fontos, hogy a tesztelő csapat a saját képességeik és erősségeik alapján egyeztesse, hogy melyik tag végezze el az egyes teszteket.
2. A szoftver megértése
A tanulási szakasz a feltáró tesztelés kritikus része. Ez azt jelenti, hogy a tesztelőknek aktívan foglalkozniuk kell a szoftverrel, és ki kell találniuk, hogyan működik, mielőtt teszteket dolgoznának ki.
A szoftver belső működésének megismerése lehet egy közös folyamat, amely biztosítja a nagyobb megértést a csapatban. Ez lehetővé teszi a tesztelők számára, hogy jobb ellenőrzéseket és teszteseteket dolgozzanak ki.
3. A problémás területek meghatározása
Minden alkalmazásnak vannak olyan funkciói vagy összetevői, amelyek keresztezik egymást. Ahogy a szoftver egyre összetettebbé válik, nagyobb a valószínűsége a hibák kialakulásának; ez több tesztelést igényelhet. A csapatnak aktívan kell dolgoznia azon, hogy kitalálja, mely komponenseknek van szükségük további segítségre.
Lehet, hogy olyan speciális tesztelési túrákat alkalmaznak, amelyek a legjobban tükrözik az alkalmazás igényeit és a csapat általános tesztelési prioritásait.
4. Kezdjük az alapvető felhasználói forgatókönyvekkel
A minőségbiztosítási csapatok szükség esetén tetszőleges sorrendben végezhetnek feltáró teszteket, de hasznosabb lehet a könnyebb ellenőrzésekkel kezdeni, mielőtt belemerülnének a bonyolultabb funkciókba.
Ez lehetővé teszi, hogy a komplexitás szempontjából egyenletesen haladjunk előre, így a tesztelőknek lehetőségük van megérteni a szoftvert. Az is segít tesztelni, hogy az alapvető funkciók az elvárásoknak megfelelően működnek-e.
5. Párosítsa össze a tesztelőket
A párosított feltáró tesztelés egyszerre egyszerűsíti és validálja a minőségbiztosítási szakaszt, lehetővé téve a tesztelők számára, hogy minden ellenőrzés során teljes bizalommal dolgozzanak. Az együttműködés a tesztelés bármely formáját hatékonyabbá teszi azáltal, hogy a csapat minden tagja jobban ismeri a szoftvert.
Egyéni nézőpontjuknak köszönhetően sokkal mélyebb hibajelentéseket is tudnak adni, így a fejlesztők több információval dolgozhatnak.
6. Futtasson több tesztet
Az, hogy a csapat képes-e újra tesztelni egy alkalmazást, az előttük álló menetrendtől és határidőtől függ. De ha lehetséges, hasznos lehet a különösen problémás alkatrészek kétszeres ellenőrzése.
Ezen felül a tesztek megismétlésével ellenőrizni lehet, hogy a korábban észlelt hiba már javítva van-e, és nem befolyásolja-e tovább a szoftvert. Ez a szorgalom néha szükséges ahhoz, hogy a tesztelés sikeres legyen.
Következtetés
A feltáró tesztelés sokat kínál a szoftverfejlesztő cégeknek, mivel kiegészíti a szkriptelt tesztelést és számos más ellenőrzést.
A feltáró tesztelés segítségével a minőségbiztosítási csapatok magasabb színvonalon tesztelhetik az alkalmazásokat, javítva a végleges szoftver minőségét, és segítve a fejlesztőket az esetleges hibák kijavításában.
A manuális és az automatizált feltáró tesztelés kombinációja biztosíthatja a legtöbb előnyt, mivel egyenlő figyelmet fordíthat az összes szoftverkomponensre.
Ha az Ön vállalatának szüksége van egy feltáró automatizálási szoftverre, a ZAPTEST FREE Edition sokkal szélesebb körű és rugalmasabb funkcionalitást kínál, mint más prémium alkalmazások, lehetővé téve a tesztelők számára, hogy könnyedén optimalizálják ezeket az ellenőrzéseket.
GYIK és források
1. A legjobb tanfolyamok a feltáró teszt automatizálásáról
Mind az új, mind a tapasztalt feltáró tesztelők számára hasznosak lehetnek a készségeiket fejlesztő tanfolyamok. Ez magában foglalja annak kitalálását is, hogy hogyan közelítsük meg az új szoftvereket.
Hasznos tanfolyamok, amelyek segíthetnek ebben:
– Udemy’s Complete 2023 Software Testing Bootcamp; ez 28 órán keresztül széleskörű szoftvertesztelést tanít.
– Coveros’s Exploratory Testing; ez arra összpontosít, hogy hogyan lehet chartákat fejleszteni és feltáró teszteket alkalmazni API-kra.
– A Polteq kétnapos feltáró tesztelési képzése; ez azt vizsgálja, hogyan működnek a feltáró tesztek agilis környezetben.
– LinkedIn’s Exploratory Testing; ez azt mutatja be, hogy a modern szoftvertesztelés hogyan fogadta be a feltáró ellenőrzéseket.
– Coursera’s Introduction to Software Testing; ez segít az első tesztelőknek megérteni a tipikus eljárásokat.
2. Mi az 5 legfontosabb interjúkérdés a feltáró teszteléssel kapcsolatban?
A feltáró tesztelési pozíciók betöltésére irányuló interjúk során fontos, hogy a felvételi menedzserek jó kérdéseket tegyenek fel, hogy pontosan felmérhessék a jelölt készségeit és tapasztalatát.
Az öt legfontosabb kérdés a következő:
– Az alkalmasságukat is beleértve, melyek a fő különbségek a szkriptelt és a feltáró tesztelés között?
– Milyen kihívásokkal találkozott feltáró tesztelőként, és hogyan küzdötte le ezeket?
– Adjon példákat olyan feltáró tesztekre, amelyek a leginkább profitálnának a robotizált folyamatautomatizálásból.
– Ön szerint mi a legfontosabb (technikai vagy egyéb) készség egy feltáró tesztelő számára?
– Mit tanácsolna egy tesztelőnek, aki a szoftver megértésével és ellenőrzésével küzd?
3. A legjobb YouTube oktatóanyagok a feltáró tesztelésről
A YouTube-hoz hasonló videómegosztó oldalakon számos ingyenes oktatóanyag érhető el, amelyek segíthetnek a leendő tesztelőknek megérteni az alapelveket. Egyesek egy sorozat részét képezik, míg mások egyetlen videóban mélyülnek el a témában.
A következő csatornák kínálnak ilyen oktatóprogramokat:
– A The Testing Academy több száz videót kínál, amelyek a szoftvertesztelés minden aspektusát lefedik.
– Software Testing Mentor, amely hasonlóan széles körű videókat kínál a szoftvertesztelés alapjairól.
– QAFox, amely valós példákkal és élő projektekkel is kiegészíti a videókat.
– SDET-QA Automation Techie, amely számos átfogó videót tartalmaz a különböző tesztelési megközelítésekről.
– GlitchITSystem, amely feltáró teszteléssel vizsgál különböző weboldalakat, hogy megpróbálja feltárni a hibákat.
4. Hogyan kell fenntartani a feltáró teszteket?
A jól végrehajtott feltáró tesztek erős dokumentációt tartalmaznak, amelyre a fejlesztők és a jövőbeli tesztelők a szoftver újabb iterációi során visszautalnak.
Ha egy alkalmazásban jelentős frissítések történnek, szükségessé válik az elsődleges funkciók újbóli tesztelése annak biztosítása érdekében, hogy ezek a kiegészítések ne legyenek negatív hatással a már meglévő funkciókra.
Ez az egyetlen módja annak, hogy a feltáró tesztek hosszú távon is sikeresek maradjanak. Segít továbbá figyelembe venni a jövőbeli terveket, például az előzetes funkciókat az eredeti alkalmazás és annak ellenőrzései tervezésekor.
A minőségbiztosítási személyzetnek megfelelően meg kell terveznie ezeket a teszteket, és ki kell találnia, hogy mikor kell újra ellenőrizni az alkalmazást; az automatizált tesztelési eszközök segíthetnek ebben a csapatnak.
5. A feltáró tesztelés fekete dobozos tesztelés?
A feltáró tesztelés nagyon hasonlít a fekete dobozos teszteléshez, amely egy alkalmazás ellenőrzésére utal, a funkciók megnézésével, a kód közvetlen vizsgálata nélkül.
A feltáró tesztelés alá tartozó ellenőrzések típusainak nincs kifejezett korlátja; ez a megközelítés a szoftver minden aspektusára kiterjedhet, beleértve a kódot is.
Az egyik legfontosabb hasonlóság e két tesztelési típus között az, hogy a tesztelő nem rendelkezik előzetes ismeretekkel. A fekete dobozos tesztelők általában nem ismerik a szoftvert a tesztelés előtt, a feltáró tesztelők pedig a kezdeti vizsgálat részeként tanulják meg, hogyan működik a szoftver.
Bár a feltáró tesztelés általában nem mindig minősül fekete dobozos tesztelésnek, igaz, hogy a két megközelítés között jelentős átfedés van.