Behövs QA-ingenjörer fortfarande?

Publicerad: Senast uppdaterad:
Är QA-testning död och behöver du qa-kompetens?

Det går inte att förneka att världen är i ständig förändring. Tack vare webben, automatiseringen och de moderna datorernas databehandlingsförmåga har gränsen mellan människor och maskiner blivit otydlig. Hur påverkar det IT och kvalitetssäkringstestning i synnerhet? Och slutligen, vilka QA-färdigheter gör bra QA-testare bra, bra?

Den idealiska uppsättningen QA-färdigheter

I takt med att vi blir mer beroende av AI och automatisering har QA-testarnas roll också förändrats. Finns det ens en idealisk QA-testare? Förmodligen inte. Här är dock de QA-färdigheter som är vanliga hos bra QA-testare:

  • Databaskunskaper - förmåga att kontrollera eller extrahera data från databaser utan hjälp av någon annan.
  • Kodningsfärdigheter - förståelse av källkoden och effektivare sökning efter kantfall.
  • Förmågan att skriva automationstester med Geb eller RestAssured som gör det möjligt för testaren att utvärdera både användargränssnittet och API:et.
  • Möjligheten att titta igenom loggar eller till och med använda SSH för att logga in på en server, analysera ändringar i koden och hitta orsaken till att felet uppstår. Därmed inte sagt att testare ska kunna analysera problem med transaktioner eller race-condition-problem. Men att kunna hitta ett saknat utropstecken i if-satsen är definitivt en fördel.
  • Förmåga att genomföra en affärsanalys av kraven eller kanske till och med ta ansvar för dem.

Har apor kunskaper om kvalitetssäkring?

Jag har hört olika åsikter om manuella testares roll. Vissa anser att rollen lätt kan fyllas av tränade apor. Andra anser att jobbet kräver en särskild uppsättning färdigheter.

Var ligger sanningen?

Som vanligt, som med alla IT-relaterade saker, i mitten.

Vissa tror att testning kan utföras av vanliga appanvändare. De tror att det är lika bra att anställa 20 juniortestare som att använda Amazon Mechanical Turk. Frågan är om det kan vara effektivt att "slumpmässigt" klicka sig igenom en app för att hitta problem? Jag tvivlar verkligen på det. Även om det kan täcka positiva vägar (eftersom det är så de flesta människor använder appar), kommer vissa allvarliga misstag sannolikt att förbli oupptäckta. Vi kan mycket väl be våra barn att göra det, eller hur?

Har barn QA-kompetens?

QA-färdigheter i praktiken

En bra QA-testare har en stor, mycket specifik analytisk förmåga. Goda testare är nyfikna och letar efter problem, eller peta i det lilla, om du så vill.

För närvarande deltar analytiker vanligtvis inte i IT-projekt. Därför har en del av deras ansvarsområden tagits över av testare. Det beror på att QA-färdigheter innebär att man måste vara nyfiken på kraven och ifrågasätta dem hela tiden.

Låt mig förklara detta med hjälp av en hypotetisk konversation mellan en QA-testare, en kund och en programvaruutvecklare. När programvaruutvecklaren tittar på ett enkelt krav, till exempel "gratis leverans vid beställning av 5 böcker", ser han ett enkelt "om"-meddelande. Om antalet böcker är 5 eller fler, sätts leveranskostnaden till 0. Slut på historien.

En bra testare kommer sannolikt att säga: "Det är ett mycket kort krav. Det täcker inte ens de flesta scenarierna." Sedan börjar de ställa obekväma frågor.

TESTER: "Vad händer om endast två av de beställda böckerna finns i lager? Och de tre återstående kommer att skickas i ett andra paket? Är båda paketen berättigade till gratis leverans?"

KUNDEN: "Nej. Totalt fem böcker måste levereras i ett paket."

SOFTWAREUTVECKLARE: "Det är ytterligare ett "om"."

TESTER: "Vad händer om jag beställer en diskmaskin och fem böcker? Är min beställning berättigad till gratis leverans?"

KUNDEN: "Nej, naturligtvis inte. Erbjudandet gäller bara om du beställer böcker."

SOFTWAREUTVECKLARE: "Ursäkta mig, det är ännu ett 'om'".

TESTER: "Vad händer om jag får fyra e-böcker och en bok?"

KUNDEN: "Erbjudandet gäller endast tryckta böcker."

SOFTWAREUTVECKLARE: "Jag tror att vi kanske måste göra en ny uppskattning."

Som du ser har QA-testare och mjukvaruutvecklare olika tankesätt och färdigheter. Därför är det omöjligt för utvecklare att ta över QA i sin helhet.

Kommer datorerna att ta över QA-testerna?

Det tar nu nästan ingen tid att gå från att bygga ett paket till att ta det till produktion, bara 15-60 minuter. Detta utesluter praktiskt taget en manuell kvalitetsbedömning. Tidigare tog det flera veckor att testa stora projekt. Det finns inget sätt att komprimera det till ett par timmar om inte testningen är automatiserad.

Hur kan datorer hjälpa till med testning? Alla regressionstester är repetitiva och när det gäller repetitiva uppgifter har datorer sina egna fördelar. De är snabba, pålitliga och konsekventa. De gör inga misstag. Att göra fel är trots allt att vara mänsklig, eller hur?

Maskiner har inga dåliga dagar. Och de har aldrig baksmälla. Det är också lättare att uppskatta hur lång tid det kommer att ta dem att utföra en uppgift.

Vem ska bygga automatiserade tester?

Automatisering av testning är verkligen vägen framåt. Därför är den rätta frågan att ställa just nu vem som ska bygga automatiserade tester? Jag anser att de bör byggas av testare som har både kvalitetssäkringskunskaper och åtminstone grundläggande kodningsfärdigheter, med tonvikt på de förstnämnda.

Faktum är att denna önskvärda kompetens vanligtvis följer en vanlig karriärväg:

Manuell testare -> Automatiseringstestare -> Programvaruutvecklare

Övergången till mjukvaruutveckling orsakas ofta av utbrändhet eller missnöje med lönen (vilket sakta blir mindre och mindre eftersom arbetsgivarna börjar uppskatta bra testingenjörer). Med detta sagt anser jag att den första övergången från manuell till automatiserad testning är obligatorisk.

Många testare kan skriva frågor för relationella och icke-relationella databaser. Nästa steg är att lära sig grundläggande kodningsfärdigheter. Det finns ett antal resurser som gör det möjligt att lära sig Python, Java eller Groovy. Det finns gratis och betalda kurser, handledning, konferenspresentationer, böcker, e-böcker... Du kan välja.

För att skapa ett bekvämt ramverk för acceptanstestning för ett projekt krävs mycket mer kompetens och erfarenhet än vad som krävs för att skriva scenarier med ramverket. Bra testare fortsätter att lära sig för att vidga sina perspektiv och är också naturligt nyfikna. Detta gör dem till de bästa personerna för att bygga ramarna. Det är den unika kombinationen av färdigheter och egenskaper som gör dem så värdefulla.

Utan tvekan kommer automatiseringen att ta över en del av QA-testarnas arbete. Det viktiga är dock att den kommer att komplettera människan, inte ersätta henne. I huvudsak kommer den att frigöra testare så att de kan fokusera på den mänskliga (kreativa) delen av arbetet. På så sätt kan de fokusera på den övergripande produktkvaliteten i stället för att "bara" ta bort fel.

Testning av QA-kompetens

Tester som bedömer QA-färdigheter bygger på en enkel princip - kandidaterna får ett fullt fungerande system med en uppsättning företagskrav. De måste skriva tester för att bevisa att systemet uppfyller alla dessa krav. Vi kontrollerar sedan att dessa tester kan fånga upp alla potentiella fel som införs i systemet.

Om du vill börja testa dina QA-färdigheter har jag goda nyheter för dig. Vi har precis släppt våra tester för bedömning av QA-färdigheter. Du hittar dem nedan och i vår katalog för kodningstest:

nunit
MIDDLE
Testade färdigheter
Varaktighet
85 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om .NET, .NET Core, ML.NET, QA, Testning av, xUnit, NUnit

Luckor i koden

bedömning av kunskaper om NUnit, QA

Programmeringsuppgift - Nivå:

QA | .NET | NUnit | Tester för API för dokumenthanteringssystem - Implementera ett NUnit-test som kontrollerar verksamhetskraven för ett API för dokumenthanteringssystem.

junit
MIDDLE
Testade färdigheter
Varaktighet
64 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om JUnit, QA

Luckor i koden

bedömning av kunskaper om JUnit, JUnit4, QA, JUnit 5, Java

Programmeringsuppgift - Nivå:

QA | JUnit | ATM Service | Autentisering och validering av insättningar - Skriv testfall för att verifiera programvaran för bankomater (ATM).

junit
MIDDLE
Testade färdigheter
Varaktighet
66 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om QA, Testning av, Enhetstestning, Manuell testning

Luckor i koden

bedömning av kunskaper om JUnit 5, Java, QA

Programmeringsuppgift - Nivå:

QA | JUnit | ATM-tjänst | Autentisering och validering av insättningar

.NET
JUNIOR
Testade färdigheter
Varaktighet
36 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om .NET, NUnit, QA

Luckor i koden

bedömning av kunskaper om NUnit, QA

Programmeringsuppgift - Nivå:

QA | .NET, NUnit | Enhetstester för kaffemaskinprogramvara - Skriv testerna i NUnitExercise.Tests/CandidateTests.cs klassen för att verifiera den CoffeeMachineMain klass.

.NET
SENIOR
Testade färdigheter
Varaktighet
51 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om .NET, NUnit, QA

Luckor i koden

bedömning av kunskaper om NUnit, QA

Programmeringsuppgift - Nivå: Svårt

QA | .NET, NUnit | Enhetstester för e-posttjänst - Skriv tester i klassen NUnitExercise.Tests/CandidateTests.cs för att verifiera klassen för e-posttjänst

Selen
MIDDLE
Testade färdigheter
Varaktighet
48 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om QA, Selen, .NET, C#

Luckor i koden

bedömning av kunskaper om Java, QA, Selen

Programmeringsuppgift - Nivå:

QA | .NET, Selenium | Dataextraktion - Implementera metoder i klassen SeleniumTask.SeleniumExecutor för att klara alla tester.

.net
SENIOR
Testade färdigheter
Varaktighet
52 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om .NET, QA, NUnit, Testning av, C#, Selen

Luckor i koden

bedömning av kunskaper om QA, .NET, NUnit

Programmeringsuppgift - Nivå: Svårt

QA | .NET, NUnit | Business Data Generator Interface - Implementera NUnit-testerna för IDataProcessing gränssnittet i den NUnitDataProcessing.Tests.DataProcessingTest projekt som verifierar verksamhetskraven.

junit
MIDDLE
Testade färdigheter
Varaktighet
73 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Java och QA

Luckor i koden

bedömning av kunskaper om Java och QA

Programmeringsuppgift - Nivå:

QA | Java, JUnit | Automat - Skriv enhetstester för verifiering av en automat.

python
MIDDLE
Testade färdigheter
Varaktighet
46 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Python

Luckor i koden

bedömning av kunskaper om Python

Programmeringsuppgift - Nivå:

Python | Bibliotek för valutaväxling

Java
MIDDLE
Testade färdigheter
Varaktighet
39 minuter max.
Utvärdering
Automatisk
Översikt över testet

Frågor om valmöjligheter

bedömning av kunskaper om Java

Luckor i koden

bedömning av kunskaper om JUnit 5, Java, QA

Programmeringsuppgift - Nivå:

Java | JUnit | Flight Manager - Implementera de saknade funktionerna i programmet som ansvarar för hanteringen av flygdata.

När du har begränsat antalet kandidater kan du fördjupa dig i deras färdigheter i en intervju för bedömning av färdigheter.

TLDR

Är QA-testare på väg att dö ut? Absolut inte.

Måste de förändras för att överleva? Det gör de definitivt.

Kan en genomsnittlig mjukvaruutvecklare ersätta en QA-testare? Jag tvivlar verkligen på det.

Vad är dina tankar?

Dela inlägg

Läs mer om rekrytering av tekniker

Prenumerera på vår Learning Hub för att få nyttiga insikter direkt i din inkorg.

Kontrollera och utveckla kodningsfärdigheter utan problem.

Se DevSkillers produkter i praktiken.

Säkerhetscertifieringar och efterlevnad. Vi ser till att dina data är säkra och skyddade.

DevSkillers logotyp TalentBoost logotyp TalentScore-logotyp