Viimeisin päivitetty 18. maaliskuuta 2020
Miten ohjelmisto julkaistaan ilman virheitä? QA-testaajien avulla! Mitä siis on QA-testaus ja mitä QA-insinöörit tekevät? AJ Larson, Devmountainin Quality Assurance Bootcampin johtaja, selittää, miten QA sopii ohjelmistokehityksen elinkaareen, mitä työkaluja sinun täytyy osata oppia QA-testaajaksi ja mikä ero on web-kehitystehtävien ja QA-työpaikkojen välillä.
Meet the Expert: AJ Larson
-
AJ Larson, Devmountainin laadunvarmistusohjelman (QA) ohjelmajohtaja. Aloitimme QA-bootcampin lokakuussa 2017.
-
AJ on suorittanut perustutkintonsa tietotekniikassa ja maisterintutkintonsa tietojärjestelmissä, mutta sanoo, että suurin osa hänen kehityskokemuksestaan ja QA-harjoittelustaan ei ole peräisin CIS-tutkinnostaan!
Mitä on QA-testaaminen?
QA tulee sanoista Quality Assurance eli laadunvarmistus. Korkealla tasolla QA-testaus on olemassa, jotta voidaan varmistaa, että tuote, jota ollaan tekemässä, on sellainen kuin asiakas haluaa ja että se julkaistaan ilman virheitä.
Viime aikoina ohjelmistokehittäjät rakensivat ohjelmiston, luovuttivat sen QA-testaajille, ja testaajat testasivat ohjelmiston manuaalisesti ja lähettivät takaisin listan korjattavista virheistä.
QA:n uusi aalto on tehokkaampi. Me Devmountainilla koulutamme ihmisiä QA:n uuteen aaltoon, mikä tarkoittaa, että QA on mukana ketterän kehitysprosessin jokaisessa vaiheessa. QA-testaajat istuvat suunnittelupalavereissa, ovat puheluissa asiakkaiden kanssa, ovat mukana kaikissa standupeissa ja tarkastelevat koodia heti, kun kehittäjät kirjoittavat sitä, sen sijaan että odottaisivat koko tuotteen valmistumista.
QA-testaaja on erikoistunut siihen, että hänellä on asiakasajattelu, joka puolustaa asiakkaita ja esittää kysymyksiä varmistaakseen, että kaikki ovat samalla sivulla ja että mitään ei jää huomaamatta. Pitkällä aikavälillä QA säästää aikaa ja rahaa.
Mikä tekee hyvästä QA-insinööristä?
Kun haastattelen QA-insinööriä, etsin hyviä kysymyksiä. Devmountainissa etsimme opiskelijoita, jotka osaavat esittää tehokkaita kysymyksiä, havaitsevat puutteita ja ristiriitoja, huomaavat puuttuvat palat. Sellaista ihmistä, joka nauttii ongelmien ratkaisemisesta. Jonkun, joka osaa porautua syvemmälle eikä tyydy helppoon vastaukseen.
Saatat sopia QA:han, jos:
-
Tykkäät lukea asiakirjan läpi kopiomuokkausta varten.
-
Olet se, joka huomaa, että muut rikkovat pelisääntöjä.
-
Olet halukas tutkimaan asioita selvittääksesi ne.
-
Sinulla on halu oppia.
QA-testaus: Työkalut ja teknologiat
Työkaluja, joita opetamme QA-insinööreillemme, ovat:
-
JavaScript-automaatio
-
Nightwatch Framework
-
Sivujen objektimallit
-
Postman ja Newman API-testaukseen
-
JReader
-
Github
.
Korkealla tasolla, me lähinnä opetamme ihmisille, miten ohjelmistoja kehitetään ja miten me voimme sopia kehityksen elinkaareen edustamaan asiakasta sekä lopputavoitetta. Opiskelijat oppivat:
-
erilaisia tapoja testata ohjelmistoja ja ratkaista testeissä havaittuja ongelmia.
-
Miten tulkita ja pilkkoa vaatimukset testattaviksi hyväksymiskriteereiksi
-
Miten tietää, milloin tuote on valmis julkaistavaksi.
-
Miten he saavat testiensä tulokset
-
Miten he kommunikoivat testitulokset tehokkaasti
-
Miten he työskentelevät tehokkaasti kehitystiimin kanssa.
-
Miten he parantavat tuotetta ja varmistavat, että asiakas on tyytyväinen.
Pitäisikö minun osata koodata ollakseni QA Engineer?
Se riippuu. Jokaisella yrityksellä on erilainen käsitys siitä, mitä QA-insinöörin pitäisi olla. Saatat löytää todella menestyviä QA-insinöörejä tai QA-analyytikkoja, jotka eivät osaa lainkaan koodata. Löydät toisia yrityksiä, jotka haluavat keski- tai ylemmän tason kehittäjän, joka osaa myös QA:ta.
Opetin yhtä opiskelijaa, joka pyöritti kotisiivousyritystä ja on nyt automaatioinsinööri. Minulla oli toinen opiskelija, jonka ainoa työ lukion jälkeen oli donitsien jakelu ja hän päätyi kouluttamaan koko QA-osastonsa. Et todellakaan tarvitse teknistä taustaa päästäksesi QA-testaukseen. Voit tehdä menestyksekkään uran pienellä määrällä ohjelmointia.
Se tekee sinusta markkinakelpoisemman, jos osaat ainakin yhden ohjelmointikielen. Neljä suurta (kokemukseni mukaan) ovat Java, C#, JavaScript ja Python. JS ja Python ovat mielestäni anteeksiantavampia vasta-alkajille, mutta automaatio on myös anteeksiantavampaa kuin kehitys. Suosittelen monille ihmisille, joita ohjaan Devmountainissa ja sen ulkopuolella, että he tutustuisivat ympärillään oleviin tapaamisiin ja käyttäjäryhmiin nähdäkseen, mistä he voisivat saada eniten tukea.
The QA Engineering Job: Haastattelut, työnimikkeet ja palkka
Mitä kuuluu QA-insinöörin ansioluetteloon tai portfolioon?
Ei ole varsinaisesti olemassa standardia ”QA-portfoliota”. Devmountainilla varustamme opiskelijat kokemuksella erilaisista projekteista. Aina kun mahdollista, hankimme heille todellisia projekteja, joiden parissa he voivat työskennellä. Se voi olla yritys, joka kutsuu opiskelijamme testaamaan tuotteitaan. Huolehdimme siitä, että heillä on hyvät testisuunnitelmat kirjoitettuna sekä hyvä automaatio Githubissa, jota he voivat näyttää mahdollisille työnantajilleen. Näitä kokemuksia voidaan käyttää keskustelunaiheina haastatteluissa.
Mitä odottaa tyypillisessä QA-työhaastattelussa:
Jos työnkuvauksessa on mainittu paljon automaatiota, kannattaa odottaa valkotaulun käyttöä haastattelussa. Koodihaasteet ovat kuitenkin yleisempiä QA:ssa. Kaikissa QA-haastatteluissa kannattaa odottaa, että vastaat esimerkkitilanteisiin. He saattavat antaa myös erityisiä esimerkkejä, jotka liittyvät tarjonnan puutteeseen suhteessa näiden työpaikkojen kysyntään. Esimerkkikysymykset QA-insinöörin haastattelussa voisivat olla:
-
Mitä tekisit tässä tilanteessa?
-
Jos johtava laadunvarmistusinsinööri on sairas tai korvaamasi henkilö on ollut poissa muutaman viikon, miten aiot rampata ja selvittää, mikä on tärkeää?
-
Kenen kanssa aiot keskustella suunnitellaksesi lähestymistapasi?
-
Mikä oli suosikkivirheesi ja miksi?
QA-testauksen työpaikat
Voit odottaa työnimikkeitä kuten Automation Engineer, QA Tester, QA Engineer, QA Analyst, Software Test Engineer.
Kun opiskelijat valmistuvat Devmountainista, he pyrkivät yleensä QA Analystin tai QA Engineerin tehtäviin. Useimmat automaatiotehtävät odottavat, että osaat paljon enemmän koodia. Opiskelijoillemme, jotka osaavat jo hyvän määrän koodia, on mahdollista hypätä suoraan automaatiotehtäviin. Työpaikat, joiden kuvauksessa lukee ”automaatio”, ovat yleensä QA:n osalta keski- tai ylemmän tason tehtäviä. Olen nähnyt opiskelijoiden, joilla on kolmen kuukauden kokemus, pätevöityvän näihin keskitason tehtäviin, kunhan he ovat saaneet käsiinsä ja hieman enemmän tietotaitoa.
Muuttuva QA-insinöörin työnkuva
Työ muuttuu jatkossakin, mutta tarve sille vain kasvaa alan mukana. Ennen kuin tulin Devmountainiin, kysyntä ylitti QA-insinöörien tarjonnan. Olen nähnyt odotusten muuttuvan QA:n kohdalla paljon enemmän kuin muissa tehtävissä myös teknologiamaailmassa. Kun kehitys muuttuu, QA:n on muututtava sen mukana.
QA Engineering vs. Web Development
Onko QA-testaaminen helpompaa kuin kehittäjäksi ryhtyminen?
Aina on ollut tämä stigma: ”Etkö osaa hakata kehitystyössä? Mene vain QA:han”. Tuo ajattelutapa ei ole täysin väärä. QA:ssa on yleensä helpompi aloittaa kuin kehitystyössä. Sinun ei tarvitse opetella täydellistä full-stack-kehitystä, joten QA:ssa paine on pienempi. On paljon ihmisiä, jotka käyttävät QA:ta menestyksekkäästi ponnahduslautana muulle teknologiateollisuudelle.
Päätöksenteko QA:n ja web-kehityksen välillä
Yksi kysymys, jonka haluan kysyä tulevilta opiskelijoilta, on: ”Haluaisitko mieluummin hankkia suunnittelun ja sitten rakentaa jotain, joka täyttää nämä vaatimukset?”. Vai hankkisitko mieluummin tuotteen ja todistaisit, täyttääkö suunnitelma vaatimukset vai ei?” Onko sinusta hauskempaa tehdä jotain, joka täyttää odotukset, vai rikkoa jotain?
QA-Insinöörin palkat vs. web-kehittäjän palkat
On olemassa harhaluulo, että QA-tekniikka ei ole yhtä tuottoisaa kuin web-kehitys. Jos olet valmis tekemään töitä automaation parissa, tienaat samantasoista palkkaa kuin web-kehittäjä. Olet periaatteessa kehittäjä, jolle laatu on kaikki kaikessa,
Jos pitäydyt vain manuaalisessa QA:ssa, et ehkä tienaa yhtä paljon tai pysty kasvamaan yhtä pitkälle kuin teknisesti taitavammat QA-insinöörit. Manuaalisen QA-testerin keskipalkka on Zip Recruiterin mukaan ~78 566 dollaria/vuosi.
Minusta QA:ssa on helpompi kasvaa nopeammin kuin kehitystyössä, koska alalta puuttuu teknisen QA:n osaamisen omaavia ihmisiä, kun taas kehittäjiä on runsaasti.
QA Testing Training for Beginners
On olemassa sivustoja kuten Guru99 tai Meetups ja järjestöjä kuten The Ministry of Testing. Paikallisesti kuulun QA is the Point -ryhmään. Etsi Meetup läheltäsi! QA:lle ei ole paljon hyviä resursseja.
Voidaksesi selvittää, onko QA ura, josta pidät, suosittelen etsimään verkkosivuston ja leikkimään sillä. Katso, saatko sen rikkoutumaan. Pelleile internetin ja videopelien kanssa nähdäksesi, voitko aiheuttaa ongelmia. Jos saat siitä innostusta, se on hyvä paikka aloittaa.
Lue lisää ja lue Devmountainin arvosteluja Course Reportista. Tämän artikkelin on tuottanut Course Report -tiimi yhteistyössä Devmountainin kanssa.
Tietoa kirjoittajasta
Liz on yksi Course Reportin perustajista, joka on kattavin resurssi opiskelijoille, jotka tutkivat koodausleirejä. Hänen tutkimuksiaan on siteerattu muun muassa New York Timesissa, Wall Street Journalissa ja TechCrunchissa. Hän rakastaa aamiaistacoja ja viettää aikaa tutustumalla bootcamp-alumniin ja perustajiin ympäri maailmaa. Tutustu Lizin & kurssiraporttiin Twitterissä, Quorassa ja YouTubessa!