Utolsó frissítés 2020. március 18.
Hogyan jelenik meg egy szoftver hibák nélkül? QA tesztelők! Mi is az a QA tesztelés, és mit csinálnak a QA mérnökök? AJ Larson, a Devmountain Quality Assurance Bootcamp igazgatója elmagyarázza, hogyan illeszkedik a QA a szoftverfejlesztés életciklusába, milyen eszközöket kell ismerned, hogy megtanulj QA-tesztelőnek lenni, és mi a különbség a webfejlesztői és a QA állások között.
Meet the Expert: AJ Larson
-
AJ Larson, a Devmountain minőségbiztosítási (QA) programjának programigazgatója. A QA bootcampet 2017 októberében indítottuk el.
-
AJ informatikai információs rendszerekből szerzett alapdiplomát és mesterdiplomát információs rendszerekből, de azt mondja, hogy a legtöbb fejlesztési tapasztalata és QA gyakorlata nem a CIS diplomájából származik!
Mi a QA tesztelés?
AQA a minőségbiztosítás rövidítése. Magas szinten a QA-tesztelés azért létezik, hogy megerősítse, hogy a termék, amit készítesz, az a termék, amit az ügyfél szeretne, és hibamentesen kerül kiadásra.
Régebben a szoftverfejlesztők elkészítették a szoftvert, átadták a QA-tesztelőknek, a tesztelők pedig kézzel tesztelték a szoftvert, és visszaküldték a javítandó hibák listáját.
A minőségbiztosítás új hulláma sokkal hatékonyabb. A Devmountainnál a QA új hullámára képezzük az embereket, ami azt jelenti, hogy a QA részt vesz az agilis fejlesztési folyamat minden lépésében. A QA-tesztelők ott ülnek a tervezési megbeszéléseken, részt vesznek az ügyfelekkel folytatott hívásokon, ott vannak az összes standupban, és már akkor megnézik a kódot, amikor a fejlesztők írják azt, ahelyett, hogy megvárnák, amíg a teljes termék elkészül.
A QA-tesztelő arra specializálódott, hogy az ügyfelek gondolkodásmódját képviseli, és kérdéseket tesz fel, hogy megbizonyosodjon arról, hogy mindenki ugyanazon az oldalon áll, és semmi sem marad ki. Hosszú távon a QA időt és pénzt takarít meg.
Mitől lesz jó egy QA mérnök?
Amikor interjút készítek egy QA mérnökkel, a jó kérdéseket keresem. A Devmountainnél olyan hallgatókat keresünk, akik hatékony kérdéseket tudnak feltenni, észreveszik a hibákat és ellentmondásokat, észreveszik a hiányzó darabokat. Olyan embereket, akik élvezik a problémamegoldást. Olyasvalakit, aki képes mélyre ásni, és nem elégszik meg a könnyű válasszal.
Akkor lehetsz alkalmas a minőségbiztosításra, ha:
-
Szeretsz átolvasni egy dokumentumot a másolás-szerkesztéshez.
-
Te vagy az, aki kiszúrja, ha mások megszegik a játékszabályokat.
-
Hajlandó vagy kutatni, hogy rájöjj valamire.
-
Van benned késztetés a tanulásra.
QA tesztelés: Eszközök és technológiák
A következő eszközöket tanítjuk a QA mérnökeinknek:
-
JavaScript automatizálás
-
Nightwatch Framework
-
Page Object Models
-
Postman és Newman az API teszteléshez
-
JReader
-
Github
.
Magas szinten, lényegében megtanítjuk az embereknek, hogy hogyan fejlesztik a szoftvereket, és hogyan tudunk beilleszkedni a fejlesztési életciklusba, hogy az ügyfelet és a végcélt is képviseljük. A hallgatók megtanulják:
-
A szoftver tesztelésének különböző módjait és a tesztek során talált problémák megoldását.
-
Hogyan kell értelmezni és tesztelhető átvételi kritériumokká bontani a követelményeket
-
Hogyan lehet tudni, mikor áll készen egy termék a kiadásra.
-
Hogyan kapják meg a tesztjeik eredményeit
-
Hogyan kommunikálják hatékonyan a teszteredményeiket
-
Hogyan dolgozzanak hatékonyan együtt a fejlesztőcsapattal.
-
Hogyan javítsák a terméket és gondoskodjanak arról, hogy az ügyfél elégedett legyen.
Tudnom kell kódolni ahhoz, hogy minőségbiztosítási mérnök lehessek?
Az attól függ. Minden vállalatnak más elképzelése van arról, hogy milyennek kell lennie egy QA mérnöknek. Előfordulhat, hogy igazán sikeres QA mérnökökkel vagy QA elemzőkkel találkozik, akik egyáltalán nem tudnak kódolni. Találsz más cégeket, akik egy közép- vagy felsőfokú fejlesztőt akarnak, aki a QA-hoz is ért.
Tanítottam egy diákot, aki egy szobatisztasági vállalkozást vezetett, és most automatizálási mérnök. Volt egy másik diákom, akinek a középiskola után az egyetlen munkája az volt, hogy fánkot szállított, és végül az egész QA osztályát képezte ki. Egyértelműen nem kell műszaki háttér a QA teszteléshez. Egy kis programozási ismerettel is sikeres karriert futhatsz be.
Az, hogy legalább egy programozási nyelvet ismersz, sokkal piacképesebbé tesz téged. A négy nagy nyelv (tapasztalatom szerint) a Java, a C#, a JavaScript és a Python. Szerintem a JS és a Python elnézőbb a kezdőkkel szemben, de az automatizálás is elnézőbb, mint a fejlesztés. Sok embernek, akit mentorálok a Devmountainben és azon kívül is, ajánlom, hogy nézzenek körül a környékbeli meetupokon és felhasználói csoportokban, hogy lássák, hol kaphatják a legtöbb támogatást.
A QA mérnöki munka: Interjúk, munkakörök és fizetés
Mit tartalmaz egy QA mérnöki önéletrajz vagy portfólió?
Nem igazán létezik szabványos “QA portfólió”. A Devmountainnél különböző projektekben szerzett tapasztalatokkal ruházzuk fel a hallgatókat. Ahol csak lehetséges, valós projekteket szerzünk nekik, amelyeken dolgozhatnak. Ez lehet egy vállalat, amely meghívja a diákjainkat, hogy teszteljék a termékeiket. Gondoskodunk róla, hogy jó tesztterveket írjanak ki, amelyeket a Githubon lévő jó automatizálással együtt megmutathatnak a leendő munkaadóiknak. Ezek a tapasztalatok beszédtémaként használhatók az interjúkon.
Mire számíthatunk egy tipikus QA állásinterjún:
Ha a munkaköri leírásban sok automatizálás szerepel, akkor az interjún számítani kell táblázásra. A QA-ban azonban gyakoribbak a kódkihívások. Minden QA interjún számítson arra, hogy mintaszituációkra kell válaszolnia. Konkrét példákat hozhatnak arra vonatkozóan is, hogy a kereslethez képest mekkora a kínálat hiánya ezekben a munkakörökben. A QA mérnöki interjúra vonatkozó mintakérdések a következők lehetnek:
-
Az adott helyzetben mit tenne?
-
Ha a vezető QA beteg, vagy az Ön által helyettesített személy néhány hétig távol van, hogyan fog felpörögni és kitalálni, mi a fontos?
-
Kivel fogsz beszélni, hogy megtervezd a megközelítésedet?
-
Melyik volt a kedvenc hibád és miért?
QA tesztelési állások
Az olyan munkakörökre számíthatsz, mint Automation Engineer, QA Tester, QA Engineer, QA Analyst, Software Test Engineer.
Amikor a Devmountain-en végzett hallgatók általában QA Analyst vagy QA Engineer munkakörökbe mennek. A legtöbb automatizálási pozíció elvárja, hogy sokkal több kódot ismerj. Azoknak a diákjainknak, akik már tudnak egy jó adag kódot, lehetséges, hogy egyből egy automatizálási pozícióba ugorjanak. Azok az állások, amelyeknek a leírásában az “automatizálás” szerepel, általában közép- és felsővezetői szintű állások, ha a minőségbiztosításról van szó. Láttam már három hónapos tapasztalattal rendelkező diákokat, akiket ezekre a középszintű pozíciókba kvalifikáltak, ha már kezükbe vették a kezüket és egy kicsit több szaktudást szereztek.
Változó QA mérnöki munkaköri leírás
A munkakör továbbra is változni fog, de az iparággal együtt az igény is csak növekedni fog. Mielőtt a Devmountainhoz kerültem, a kereslet meghaladta a QA mérnökök kínálatát. Láttam, hogy az elvárások sokkal jobban változnak a QA-nál, mint a technológiai világ más pozícióinál is. Ahogy a fejlesztés változik, a minőségbiztosításnak is változnia kell vele együtt.
QA mérnök vs. webfejlesztő
A QA tesztelés könnyebb, mint fejlesztővé válni?
Mindig is létezett ez a stigma: “Nem tudod meghekkelni a fejlesztésben? Csak menj a minőségbiztosításba”. Ez a gondolkodásmód nem teljesen téves. A minőségbiztosításba általában könnyebb bekerülni, mint a fejlesztésbe. Nem kell tökéletesen megtanulnod a full-stack fejlesztést, így a QA-ban kisebb a nyomás. Sokan vannak, akik sikeresen használják a QA-t ugródeszkaként a technológiai ipar többi részébe.
Döntés a QA és a webfejlesztés között
Az egyik kérdés, amit szeretek feltenni a leendő hallgatóknak, a következő: “Inkább kapnál egy tervet, és utána építenél valamit, ami megfelel ezeknek a követelményeknek?”. Vagy inkább megszereznéd a terméket, és bebizonyítanád, hogy a terv megfelel-e a követelményeknek vagy sem?”. Jobban fogod élvezni, ha olyasmit készítesz, ami megfelel az elvárásoknak, vagy ha elrontasz valamit?
A minőségbiztosítási mérnök fizetése vs. webfejlesztő fizetése
Tévhit, hogy a minőségbiztosítási mérnöki munka nem olyan jövedelmező, mint a webfejlesztés. Ha hajlandó vagy elvégezni az automatizáláshoz szükséges munkát, akkor egy webfejlesztővel egyenrangú fizetést fogsz keresni. Alapvetően egy fejlesztő vagy, akinek minden a minőségről szól,
Ha csak a kézi minőségbiztosításhoz ragaszkodsz, akkor nem biztos, hogy annyit keresel, vagy nem tudsz annyit fejlődni, mint a technikailag képzettebb QA mérnökök. A Zip Recruiter szerint a manuális QA tesztelő átlagfizetése ~78,566 dollár/év.
Véleményem szerint a QA-ban könnyebb gyorsabban fejlődni, mint a fejlesztésben, mert az iparágban hiányoznak a technikai QA készségekkel rendelkező emberek, míg fejlesztőkből bőven van.
QA tesztelési képzés kezdőknek
Léteznek olyan oldalak, mint a Guru99 vagy a Meetups és olyan szervezetek, mint a The Ministry of Testing. Helyileg egy QA is the Point nevű csoport tagja vagyok. Keress egy Meetupot a közeledben! Nincs sok nagyszerű forrás a QA számára.
Hogy megtudd, hogy a QA egy olyan karrier-e, ami tetszik neked, azt javaslom, keress egy weboldalt és játssz vele. Nézd meg, hogy meg tudod-e törni. Kavarj az internettel és a videojátékokkal, hátha tudsz problémákat okozni. Ha ez az izgalom elkap, akkor az egy jó kiindulópont.
Tudj meg többet, és olvasd el a Devmountain értékeléseit a Course Report oldalon. Ezt a cikket a Course Report csapata készítette a Devmounttal együttműködve.
A szerzőről
Liz a Course Report társalapítója, a legteljesebb forrás a kódolási bootcampek után kutató diákok számára. Kutatásait többek között a The New York Times, a Wall Street Journal és a TechCrunch is idézte. Imádja a reggeli tacót, és szereti az időt azzal tölteni, hogy megismerkedik a bootcampek öregdiákjaival és alapítóival szerte a világon. Nézd meg Liz & tanfolyamjelentését a Twitteren, a Quora-n és a YouTube-on!