Sidst opdateret 18. marts 2020
Hvordan bliver software frigivet uden fejl? QA-testere! Så hvad er QA-testning, og hvad laver QA-ingeniører? AJ Larson, Quality Assurance Bootcamp Director hos Devmountain, forklarer, hvordan QA passer ind i softwareudviklingslivscyklussen, hvilke værktøjer du skal kende lære at være QA-tester, og forskellen mellem webudviklingsjobs og QA-jobs.
Mød eksperten: AJ Larson
-
AJ Larson, programdirektør for Quality Assurance (QA)-programmet hos Devmountain. Vi startede QA bootcamp i oktober 2017.
-
AJ fik sin bachelorgrad i Computer Information Systems og sin kandidatgrad i Information Systems, men siger, at det meste af hans udviklingserfaring og QA-praksis ikke kom fra hans CIS-uddannelse!
Hvad er QA-testning?
QA står for Quality Assurance. På et højt niveau er QA-testning til for at bekræfte, at det produkt, du laver, er det produkt, som kunden ønsker, og at det frigives uden fejl.
I gamle dage byggede softwareudviklerne softwaren, overdrog den til QA-testere, og testerne testede manuelt softwaren og sendte en liste over fejl, der skulle rettes.
Den nye bølge af QA er mere effektiv. Hos Devmountain uddanner vi folk til den nye bølge af QA, hvilket betyder, at QA er involveret i alle trin i den agile udviklingsproces. QA-testere sidder med til designmøder, deltager i opkald med kunder, er med i alle standups og ser på kode, så snart udviklerne skriver den, i stedet for at vente på, at hele produktet er færdigt.
En QA-tester er specialiseret i at have kunde-tankegangen forfægter kunderne og stiller spørgsmål for at sikre, at alle er på samme side, og at intet bliver overset. I det lange løb sparer QA tid og penge.
Hvad gør en god QA-ingeniør til en god QA-tekniker?
Når jeg interviewer en QA-ingeniør, leder jeg efter gode spørgsmål. Hos Devmountain leder vi efter studerende, der kan stille effektive spørgsmål, spotte fejl og modsigelser, lægge mærke til manglende dele. Den slags person, der nyder at løse problemer. En person, der kan bore ned og ikke er tilfreds med det nemme svar.
Du passer måske godt til QA, hvis:
-
Du nyder at læse et dokument igennem for at kopiere redigeringen.
-
Du er den, der opdager, at andre bryder reglerne i et spil.
-
Du er villig til at lave research for at finde ud af noget.
-
Du har lysten til at lære.
QA-testning: Værktøjer og teknologier
De værktøjer, vi lærer vores QA-ingeniører, er:
-
JavaScript Automation
-
Nightwatch Framework
-
Page Object Models
-
Side Object Models
-
Postman og Newman til API-testning
-
JReader
-
Github
På et højt niveau, lærer vi i det væsentlige folk, hvordan software udvikles, og hvordan vi kan passe ind i udviklingslivscyklussen for at repræsentere kunden såvel som slutmålet. De studerende vil lære:
-
forskellige måder at teste software på og løse de problemer, de finder under deres test.
-
Hvordan man fortolker og nedbryder krav til testbare acceptkriterier
-
Hvordan man ved, hvornår et produkt er klar til at blive frigivet.
-
Hvordan de får resultaterne af deres tests
-
Hvordan de kommunikerer deres testresultater effektivt
-
Hvordan de arbejder effektivt sammen med udviklingsteamet.
-
Hvordan de forbedrer produktet og sørger for, at kunden er tilfreds.
Har jeg brug for at kunne kode for at blive QA Engineer?
Det kommer an på. Hver virksomhed har en anden opfattelse af, hvad en QA Engineer skal være. Du kan finde virkelig succesfulde QA Engineers eller QA Analysts, som ikke kan kode. Du vil finde andre virksomheder, der ønsker en udvikler på mellem- til seniorniveau, som også ved, hvordan man laver QA.
Jeg underviste en elev, som drev en rengøringsvirksomhed og nu er Automation Engineer. Jeg havde en anden studerende, hvis eneste job efter gymnasiet var at levere donuts, og han endte med at uddanne hele sin QA-afdeling. Du behøver bestemt ikke en teknisk baggrund for at komme ind i QA Testing. Du kan få en succesfuld karriere med en lille mængde programmering.
Det vil gøre dig mere salgbar at kende mindst ét programmeringssprog. De fire store (efter min erfaring) er Java, C#, JavaScript og Python. Jeg synes, at JS og Python er mere tilgivende for nybegyndere, men automatisering er også mere tilgivende end udvikling. Jeg anbefaler mange af de mennesker, som jeg vejleder i og uden for Devmountain, at kigge på meetups og brugergrupper omkring dem for at se, hvor de kan få mest støtte.
The QA Engineering Job: Interview, stillingsbetegnelser og løn
Hvad indgår i et CV eller en portefølje for QA-ingeniører?
Der er ikke ligefrem en standard “QA-portefølje”. Hos Devmountain udstyrer vi de studerende med erfaring fra forskellige projekter. Hvor det er muligt, får vi projekter fra den virkelige verden, som de kan arbejde på. Det kan være en virksomhed, der inviterer vores studerende til at teste deres produkter. Vi sørger for, at de har gode testplaner skrevet ud, som de kan vise frem sammen med god automatisering på Github, som de kan vise deres potentielle arbejdsgivere. Disse erfaringer kan bruges som samtaleemner i interviews.
Hvad man kan forvente i en typisk QA-jobsamtale:
Hvis der står meget automatisering i jobbeskrivelsen, så skal du forvente whiteboarding i jobsamtalen. Dog er kodeudfordringer mere almindelige i QA. I alle QA-interviews skal du forvente at skulle svare på eksempler på situationer. De kan også give specifikke eksempler i forbindelse med manglende udbud i forhold til efterspørgslen på disse job. Eksempler på spørgsmål til QA-ingeniørinterviews kan være:
-
Hvad ville du gøre, hvis du stod i denne situation?
-
Hvis den ledende QA er syg, eller hvis den person, du skal erstatte, har været væk i et par uger, hvordan vil du så sætte fart på og finde ud af, hvad der er vigtigt?
-
Hvem skal du tale med for at planlægge din tilgang?
-
Hvad var din yndlingsfejl og hvorfor?
QA Testing Jobs
Du kan forvente jobtitler som Automation Engineer, QA Tester, QA Tester, QA Engineer, QA Analyst, Software Test Engineer.
Når studerende afslutter deres uddannelse fra Devmountain, har de en tendens til at gå ind i QA Analyst- eller QA Engineer-roller. De fleste stillinger inden for automatisering forventer, at du kender meget mere kode. For vores studerende, der allerede kender en god mængde kode, er det muligt at springe direkte ind i en automatiseringsstilling. Job med “automation” i beskrivelsen har en tendens til at være job på mellem- til seniorniveau, når det gælder QA. Jeg har set studerende med tre måneders erfaring kvalificere sig til disse stillinger på mellemniveau, når de først har fået fingrene i og lidt mere knowhow.
En skiftende jobbeskrivelse for QA-ingeniører
Jobbet vil fortsat ændre sig, men behovet for det vil kun vokse sammen med industrien. Før jeg kom til Devmountain, var efterspørgslen større end udbuddet af QA-ingeniører. Jeg har set forventningerne ændre sig meget mere med QA end med andre stillinger inden for den tekniske verden også. I takt med at udviklingen ændrer sig, er QA nødt til at ændre sig med den.
QA Engineering vs Web Development
Er QA-testning nemmere end at blive udvikler?
Der har altid været denne stigmatisering: “Du kan ikke hacke det i udvikling? Du kan bare gå ind i QA.” Den tankegang er ikke helt forkert. QA har en tendens til at være lettere at komme i gang med end udvikling. Du behøver ikke at lære full-stack-udvikling perfekt, så presset er lavere i QA. Der er mange mennesker, der med succes bruger QA som et springbræt til resten af den tekniske industri.
Valg mellem QA og webudvikling
Et spørgsmål, som jeg gerne stiller potentielle studerende, er: “Vil du hellere få et design og derefter bygge noget, der opfylder disse krav? Eller vil du hellere få produktet og bevise, om designet opfylder kravene eller ej?” Er det sjovere at lave noget, der opfylder forventningerne, eller at ødelægge noget?
Lønninger for QA-ingeniører vs. lønninger for webudviklere
Der er en misforståelse, at QA-ingeniørarbejde ikke er lige så lukrativt som webudvikling. Hvis du er villig til at gøre arbejdet for at komme ind i automatisering, så vil du få en løn på niveau med en webudvikler. Du er dybest set en udvikler, der handler om kvalitet,
Hvis du kun holder dig til manuel QA, så tjener du måske ikke så meget eller kan vokse lige så meget som mere teknisk kyndige QA-ingeniører. Gennemsnitslønnen for en manuel QA-testerløn er ~$78,566/år, ifølge Zip Recruiter.
I min mening er det lettere at vokse hurtigere i QA end i udvikling, fordi branchen mangler folk med de tekniske QA-færdigheder, mens udviklere er rigeligt.
QA Testing Training for Begyndere
Der er websteder som Guru99 eller Meetups og organisationer som The Ministry of Testing. Lokalt er jeg en del af en gruppe af QA is the Point. Kig efter et Meetup i nærheden af dig! Der er ikke mange gode ressourcer til QA.
For at finde ud af, om QA er en karriere, du kan lide, anbefaler jeg, at du finder et websted og leger med det. Se, om du kan få den til at gå i stykker. Lav noget rod med internettet og videospil for at se, om du kan skabe problemer. Hvis du får den begejstring, er det et godt sted at starte.
Find ud af mere og læs Devmountain-anmeldelser på Course Report. Denne artikel er produceret af Course Report-teamet i samarbejde med Devmountain.
Om forfatteren
Liz er medstifter af Course Report, den mest komplette ressource for studerende, der forsker i coding bootcamps. Hendes forskning er blevet citeret i New York Times, Wall Street Journal, TechCrunch og meget mere. Hun elsker morgenmadstacos og at bruge tid på at lære bootcamp-alumner og grundlæggere fra hele verden at kende. Tjek Liz & Course Report ud på Twitter, Quora og YouTube!