Manual testing: Wat de beste testers anders doen


Manual testing lijkt misschien eenvoudig, maar het vereist eigenschappen die verder gaan dan technische kennis. Ontwikkelaars en gebruikers verschillen.

Manual Testing

Manual testing lijkt misschien eenvoudig, maar in de praktijk wordt er vaak veel te lichtvaardig over gedacht. Het vereist namelijk een specifieke set eigenschappen die verder gaat dan alleen technische kennis. Hoewel een ontwikkelaar en een gebruiker van elkaar verschillen, vragen we complementaire kwaliteiten die nodig zijn om effectief te kunnen testen. Welke eigenschappen heb je voor Manual testing nodig als ontwikkelaar of als gebruiker?

Wat is de kracht van manual testing vs automation testing?

Bij Automatisch testen wordt het hele testproces, van het genereren van testcases tot het rapporteren van de resultaten, zo veel mogelijk geautomatiseerd. Sommige puristen beweren echter dat echt “automatisch testen” niet bestaat, omdat de analyse en het ontdekken van bugs altijd een menselijke component vereist.

De kracht van geautomatiseerd testen (versus Manual Testing)

De kracht van geautomatiseerd testen ligt in de volgende punten:

  1. Snelheid en Efficiëntie: Geautomatiseerde tests kunnen in een fractie van de tijd worden uitgevoerd die handmatig testen zou kosten. Dit is cruciaal in Agile en DevOps omgevingen waar snelle, frequente releases plaatsvinden.
  2. Betrouwbaarheid en Consistentie: Een geautomatiseerde test voert dezelfde stappen altijd op exact dezelfde manier uit. Dit elimineert de kans op menselijke fouten, zoals het overslaan van een stap of het onjuist invoeren van gegevens.
  3. Herhaalbaarheid: Geautomatiseerde tests kunnen oneindig vaak worden herhaald. Dit is van onschatbare waarde voor regressietesten, waarbij je na elke codeaanpassing wilt controleren of de bestaande functionaliteit nog steeds correct werkt.
  4. Schaalbaarheid: Het is eenvoudig om geautomatiseerde tests op meerdere browsers, besturingssystemen of apparaten tegelijk uit te voeren. Dit is vrijwel onmogelijk met handmatig testen en versnelt het testen van compatibiliteit enorm.
  5. Vroege Feedback: Geautomatiseerde tests kunnen worden geïntegreerd in de build- en deployment-processen (Continuous Integration/Continuous Deployment, CI/CD). Hierdoor wordt feedback over de codekwaliteit bijna direct na het inchecken van de code gegeven, wat bugs in een vroeg stadium aan het licht brengt en de herstelkosten verlaagt.

Handmatig testen blijft onmisbaar als Quality Assurance tool

Ondanks de kracht van automatisering, is handmatig testen onvervangbaar voor:

  • Exploratory Testing: Het vrijelijk verkennen van de applicatie op een manier die niet vooraf is gedefinieerd.
  • Usability Testing: Beoordelen hoe gebruiksvriendelijk de applicatie is vanuit een menselijk perspectief.
  • Ad-hoc Testing: Snelle, ongestructureerde tests om de grenzen van het systeem te verkennen.

Kortom, de kracht van geautomatiseerd testen ligt in het snel, efficiënt en betrouwbaar uitvoeren van repetitieve en gedefinieerde taken. De kracht van handmatig testen ligt in het menselijke inzicht en intuïtie die nodig zijn om complexe problemen en gebruikerservaringen te beoordelen. Een effectieve teststrategie combineert de voordelen van beide QA methoden.

Over welke eigenschappen moet een softwareontwikkelaar beschikken voor manual testing?

Een ontwikkelaar die goed is in handmatig testen, is niet alleen gericht op het schrijven van code die werkt, maar ook op het opsporen van de mogelijke problemen daarin. Dit vraagt om de volgende eigenschappen:

  • Kritisch en Analytisch Denken: De ontwikkelaar moet in staat zijn om de eigen code te bekijken met een kritische blik. Dit betekent dat hij of zij verder denkt dan de ‘happy path’ en zich afvraagt: “Wat als ik hier ongeldige data invoer? Wat gebeurt er als ik op deze knop klik voordat de pagina volledig is geladen?”
  • Aandacht voor Detail: Een kleine programmeerfout of een onjuiste data-invoer kan leiden tot een grote bug. De ontwikkelaar moet oog hebben voor de kleinste details, zoals de uitlijning van een element of een foutmelding.
  • Empathie met de Gebruiker: De ontwikkelaar moet zich kunnen verplaatsen in de gebruiker. Dit helpt om de software te testen vanuit een realistisch perspectief en om de gebruikerservaring te verbeteren. Ze moeten zich afvragen: “Zou een gebruiker dit logisch vinden? Zijn de stappen duidelijk?”
  • Doorzettingsvermogen: Het vinden van bugs kan frustrerend zijn. De ontwikkelaar moet de motivatie hebben om te blijven zoeken en niet op te geven bij het eerste de beste probleem.
  • Systematische Aanpak: Goed testen is geen willekeurig proces. Het vereist een gestructureerde aanpak, van het opstellen van een testplan tot het nauwkeurig documenteren van de gevonden bugs.

Eigenschappen voor de eindgebruiker

Een eindgebruiker is, vanuit het perspectief van de tester, de uiteindelijke bron van feedback. Hoewel een gebruiker niet technisch is, kan hij of zij toch enorm waardevol zijn bij het handmatig testen. Als jij tenminste over de volgende eigenschappen beschikt:

  • Open en Constructieve Houding: De gebruiker moet bereid zijn om de software te testen en feedback te geven. Een opbouwende houding helpt om de software te verbeteren en het testproces te versnellen.
  • Duidelijke Communicatie: Om effectief te zijn, moet de gebruiker duidelijk kunnen omschrijven wat er misgaat. In plaats van te zeggen “Het werkt niet”, moet hij of zij kunnen specificeren: “Ik klikte op de knop, en er gebeurde niets.”
  • Geduld: Een gebruiker die de software test, kan bugs en onverwachte problemen tegenkomen. Geduld is belangrijk om de stappen te herhalen en de tester van de nodige informatie te voorzien.
  • Nieuwsgierigheid: De beste gebruikers proberen niet alleen de verwachte stappen uit, maar verkennen de software ook op onverwachte manieren. Deze nieuwsgierigheid kan leiden tot het ontdekken van bugs die anders onopgemerkt zouden blijven.

De combinatie van deze eigenschappen, zowel bij de ontwikkelaar als bij de gebruiker, is essentieel voor een succesvol handmatig testproces. Het is een samenwerking die resulteert in een betere en stabielere software. Daarom moet manual testing een prominente plaats in het projectplan krijgen, het is niet iets wat we er even bij doen.

Het effect van Manual testing jobs remote op deze eigenschappen

Remote werken heeft een aanzienlijke invloed op de eigenschappen die nodig zijn voor succesvol manual testing. De testers kunnen immers over de hele wereld verspreid werken, ingehuurd zijn voor alleen deze klus en enigszins anoniem blijven. De fundamentele vaardigheden blijven hetzelfde, maar de manier waarop ze tot uiting komen en de nadruk die erop wordt gelegd, veranderen.

Versterkte Eigenschappen

Sommige eigenschappen worden in een remote setting nog belangrijker.

  • Zelfdiscipline en proactief denken.
  • Gestructureerde en heldere communicatie.
  • Resultaatgerichtheid.
  • Aanpassingsvermogen.

Eigenschappen die een nieuwe vorm krijgen

Sommige eigenschappen blijven belangrijk, maar vereisen een andere aanpak.

  • Samenwerking.
  • Doorzettingsvermogen.

Remote werken maakt het selecteren van de juiste testers dus extra belangrijk.

Manual testing interview vragen die we stellen om de juiste testers te vinden

In de zoektocht naar de juiste testers kunnen we kandidaten een aantal vragen stellen die de nadruk leggen op de eigenschappen die we zoeken. De antwoorden laten zien of een tester de juiste mentaliteit en vaardigheden heeft.

Kenmerk 1: Fundamentele Concepten van Manual Testing

Vraag 1.1: Wat is manual testing?

Antwoord: Manual testing is een proces waarbij een tester een applicatie handmatig verkent. Het vereist een combinatie van aandacht voor detail en analytisch denken om bugs te vinden die de normale gebruiker zou kunnen tegenkomen. Het gaat niet alleen om het uitvoeren van stappen, maar ook om het verplaatsen in de behoeften van de eindgebruiker, oftewel gebruikers-empathie.

Vraag 1.2: Wat is het verschil tussen validatie en verificatie?

Antwoord: Verificatie (bouwen we het product op de juiste manier?) is een taak die systematisch denken vereist, waarbij de tester de specificaties nauwkeurig controleert. Validatie (bouwen we het juiste product?) vereist gebruikers-empathie en een kritische blik om te bepalen of de applicatie aan de verwachtingen van de gebruiker voldoet. De beste testers excelleren in beide.

Kenmerk 2: Testmethodologie en Technieken

Vraag 2.1: Leg Boundary Value Analysis (BVA) uit met een voorbeeld.

Antwoord: BVA is een techniek die aandacht voor detail en analytisch denken vereist. In plaats van willekeurige waarden in te voeren, test je de uiterste grenzen van een veld. Als een veld waarden van 1 tot 10 accepteert, test je 0, 1 en 11. Een tester met deze eigenschappen weet dat juist op deze randen fouten vaak verborgen zitten.

Vraag 2.2: Wat is ad-hoc testen?

Antwoord: Ad-hoc testen is een informele testmethode zonder formele testcases. Het vereist nieuwsgierigheid en een doorzettingsvermogen om de applicatie te verkennen op onverwachte manieren. De tester vertrouwt op zijn intuïtie en creativiteit om bugs te vinden die een gestandaardiseerde test over het hoofd zou zien.

Kenmerk 3: De Software Testcyclus (STLC)

Vraag 3.1: Wat is een Bug Report? Welke informatie moet het bevatten?

Antwoord: Een bug report is een document dat een bug beschrijft. Het schrijven van een goed rapport vereist heldere communicatie en aandacht voor detail. Een effectieve tester zorgt ervoor dat alle stappen, het verwachte resultaat en het daadwerkelijke resultaat helder zijn, zodat een ontwikkelaar de bug makkelijk kan reproduceren en oplossen.

Vraag 3.2: Wat is regressietesten?

Antwoord: Regressietesten is het opnieuw testen van bestaande functionaliteit na een wijziging in de code. Dit is een proces dat systematisch denken en discipline vereist. Zonder een systematische aanpak is de kans groot dat een bug die al was opgelost, opnieuw wordt geïntroduceerd.

Kenmerk 4: Praktijkvragen en Gedragsvragen

Vraag 4.1: Hoe zou je een complexe bug opsporen?

Antwoord: Ik zou een systematische aanpak hanteren. Eerst probeer ik de bug te reproduceren, vervolgens isoleer ik de oorzaak door variabelen stap voor stap te veranderen. Dit vereist doorzettingsvermogen en analytisch denken. Zodra de bug is gevonden, schrijf ik een duidelijk rapport. Het proces is een demonstratie van zowel mijn technische vaardigheden als mijn mentale eigenschappen.

Vraag 4.2: Hoe ga je om met een deadline die je niet kunt halen?

Antwoord: In zo’n situatie is open en constructieve communicatie cruciaal. Ik zou de situatie zo vroeg mogelijk bespreken met het team en de manager. Ik zou de redenen voor de vertraging uitleggen en voorstellen doen voor het prioriteren van de meest kritieke tests. Dit toont niet alleen mijn proactieve houding, maar ook mijn verantwoordelijkheidsgevoel.

Als een kandidaat niet de exacte antwoorden weet maar wel blijk geeft van een dieper begrip?

Als een kandidaat de exacte antwoorden niet kent maar wel een dieper begrip aantoont, is dat een veel sterker signaal van een goede tester. Het gaat niet zozeer om het feitelijk reproduceren van definities, maar om het aantonen van een systematische manier van denken en een probleemoplossende mentaliteit.

Een kandidaat die blijk geeft van dieper begrip:

  • Gebruikt analogieën: De kandidaat kan een complex concept uitleggen met een alledaags voorbeeld, zoals het vergelijken van teststrategieën met het plannen van een reis.
  • Stelt tegenvragen: In plaats van direct te antwoorden, stelt de kandidaat een vraag om de context te verhelderen. Bijvoorbeeld, “Bedoelt u een formele testcyclus of een agile aanpak?”. Dit toont hun vermogen om verder te denken dan de oppervlakte.
  • Relateert concepten aan elkaar: De kandidaat legt uit hoe verschillende testtechnieken elkaar aanvullen, zoals het gebruiken van Boundary Value Analysis en Equivalence Partitioning samen. Dit laat zien dat ze de grotere context begrijpen en de technieken niet als losse feiten beschouwen.
  • Benadrukt het ‘waarom’ en niet alleen het ‘wat’: De kandidaat legt uit waarom een bepaalde techniek nuttig is, in plaats van alleen de definitie te geven. Bijvoorbeeld, “We gebruiken regressietesten om zeker te zijn dat nieuwe code geen ongewenste bijwerkingen heeft op bestaande functionaliteit”.

Dit alles laat zien dat de kandidaat de theorie in de praktijk kan brengen en niet simpelweg uit het hoofd heeft geleerd. Zo’n kandidaat heeft een hoger potentieel om een effectief lid van het team te worden.

LinkedIn GroupDiscussieer mee op ITpedia LinkedIn of op Financial Executives LinkedIn.
Samenvatting
Manual testing: Wat de beste testers anders doen
Artikel
Manual testing: Wat de beste testers anders doen
Beschrijving
Manual testing lijkt misschien eenvoudig, maar in de praktijk wordt er vaak veel te lichtvaardig over gedacht. Het vereist namelijk een specifieke set eigenschappen die verder gaat dan alleen technische kennis. Hoewel een ontwikkelaar en een gebruiker van elkaar verschillen, vragen we complementaire kwaliteiten die nodig zijn om effectief te kunnen testen.
Auteur
Publisher Naam
ITpedia
Publisher Logo
Sidebar