wat we leren op dit bericht

Software testen is het proces van het controleren van software op fouten. Het is niet alleen cruciaal voor het succes van een product, maar ook voor het ontwikkelingsproces zelf. Nochtans, kan het voor veel mensen uitdagend zijn omdat het testen van software verschillende vaardigheden en technieken vereist dan andere gebieden van softwareontwikkeling zoals codering of analyse. Dit artikel behandelt hoe we software testen benaderen in context met onze teststrategie en hoe we de follow-up van testresultaten.

vraagt u zich wel eens af of het wel nodig is om software opnieuw te testen? Dat doe ik zeker! We weten allemaal dat de kosten van softwareontwikkeling hoog kunnen zijn. Wat we niet weten is hoe vaak we onze code opnieuw moeten testen om er zeker van te zijn dat het nog steeds werkt. Goed, dit artikel zal het concept van het opnieuw testen in software testen uit te leggen en zal een paar redenen waarom het testen van uw code na elke release misschien niet zo ‘ n slecht idee.

Wat is opnieuw testen?

hertesten is het algemene proces van het opnieuw testen van iets (in dit geval software) om er zeker van te zijn dat alles werkt zoals verwacht, en een goed proces om te gebruiken als u problemen met een toepassing of computersysteem wilt identificeren. Het kan op verschillende manieren worden gebruikt tijdens de softwareontwikkelingscyclus, maar het is vaak het nuttigst als het gaat om bug fixing.

het testen van uw software na elke release is heel gebruikelijk in de wereld van softwareontwikkeling. Echter, dit is misschien niet nodig voor iedereen – vooral als je werkt aan een klein project of met eenvoudige code bases. Immers, in de meeste gevallen is het vrij eenvoudig om bugs op te lossen en bestaande functies te verbeteren zonder veel moeite: schrijf gewoon nieuwe testcases die het juiste gedrag van de nieuw geà mplementeerde functionaliteit controleren en zorg ervoor dat ze passeren!

er kunnen echter momenten zijn waarop sommige testactiviteiten meer tijd nodig hebben dan alleen het schrijven van nieuwe tests (en ze zelfs later repareren). Deze situaties omvatten bugfixes gedaan door een teamlid die nog niet bekend is met de codebase of nieuwe functies die uitgebreide testen en documentatie vereisen.

Wanneer Moet U Opnieuw Testen?

dus, hoe beslissen we wanneer opnieuw testen nodig is? Allereerst hangt het af van de grootte van je project (en welke elementen het testen waard zijn). Bijvoorbeeld: als u een grote productlijn verspreid over verschillende producten dan opnieuw testen moet deel uitmaken van uw reguliere proces, omdat elke release andere delen van het systeem op verschillende manieren kan beïnvloeden.

bedenk ook dat elke opgeloste bug zal leiden tot extra tests die worden gemaakt door ontwikkelaars – wat betekent dat ze meer tijd kunnen besteden aan het schrijven van testcases dan aan het repareren van bugs. Trouwens, er zijn situaties waarin zelfs als je vertrouwen in uw codebase is het nog steeds nodig om een aantal delen van het systeem opnieuw te testen na elke release.

bijvoorbeeld: nieuwe functionaliteit kan inconsistenties en onverwacht gedrag introduceren dat in het begin moeilijk te detecteren kan zijn, tenzij ze duidelijk worden tijdens het testen of op feedback van gebruikers (en dit zou een regelmatig onderdeel moeten zijn van uw QA-proces). Overweeg ook gevallen waarin testautomatisering nog niet is geïmplementeerd-deze tests zullen problemen pas laten zien nadat de extra inspanning is gedaan om ze opnieuw te laten passeren!

in dergelijke situaties is het handhaven van scepsis over nieuw geïntroduceerde bugs een goed idee – waarom zouden we onze codebase vertrouwen als het al bewezen is dat testen onbetrouwbaar kan zijn?

Best Practices als u

nu, wat zijn de best practices bij het beslissen of u opnieuw wilt testen en hoe doet u dit?

hier zijn enkele richtlijnen:

  • elke keer dat u een bug fix commit, geef voldoende informatie over de situatie waar het probleem werd geïntroduceerd zodat mensen in staat zullen zijn om het te reproduceren en opnieuw te testen. Als uw QA-team meer dan één paar ogen heeft die aan een probleem werken, kunnen ze dit vaak sneller doen dan ontwikkeling (vergeet in feite niet dat ontwikkelaars hun eigen verantwoordelijkheden hebben – vooral leren van fouten en bugs oplossen). Ook, check out support forums op momenten dat er minder dingen gaande zijn in hen.
  • bij het ontwikkelen van nieuwe of oude functies zorg ervoor dat alle tests slagen voordat de release klaar is voor het testen door het QA-team. Als ze dat niet doen – vraag uw QA team om ze te testen en zorg ervoor dat de bugs zijn opgelost, houd er rekening mee dat, hoewel het mogelijk is voor u om een bug zelf te repareren (met behulp van geautomatiseerde tests of handmatige tests), er altijd enige kans op het maken van fouten tijdens het doen.
  • probeer bij het ontwikkelen van de nieuwe versie van een bestaande functie zoveel mogelijk regressietests in uw codebase op te nemen – dit zal op zijn minst de risico ‘ s verminderen die gepaard gaan met het repareren van regressies veroorzaakt door wijzigingen die zijn aangebracht tijdens de ontwikkeling van andere functies.
  • bij het vrijgeven van een bètaversie van het product zorg ervoor dat het volledig functioneel is en dat alle bugs zijn opgelost (dit is vooral belangrijk voor bugfixes gemaakt tijdens de ontwikkeling of het testen op de top van deze nieuwe functie).
  • bij het vrijgeven van stabiele versies zorg ervoor dat alle bugs zijn opgelost. Dit is vooral belangrijk voor bug fixes gemaakt tijdens de ontwikkeling van andere functies op de top van de vrijgegeven functie – als ze niet waren opgenomen in hun overeenkomstige releases dan wanneer mensen proberen met behulp van deze nieuwe versies kunnen ze problemen veroorzaakt door deze veranderingen tegenkomen. Als er nog een aantal resterende problemen, zorg ervoor dat ze zo snel mogelijk worden opgelost.

hertesten vs regressie testen

Ten eerste zijn hertesten en regressie testen beide soorten softwarevalidatie die u tijdens uw ontwikkelingsproces kunt uitvoeren. Ze zijn niet hetzelfde, hoewel: hertesten wordt gedaan aan het einde van een bepaalde fase van het werk, vaak wanneer u een werkend product, maar moet ervoor zorgen dat het niet nog steeds bezaaid met bugs of fouten van vroege testen. Regressie testen is een soort software validatie die wordt gedaan op verschillende punten in het ontwikkelingsproces om ervoor te zorgen dat bepaalde aspecten van uw code correct werken.

in sommige gevallen kan het opnieuw testen eenvoudig worden uitgevoerd door eerdere Testresultaten of rapporten te lezen en eventuele problemen waarvan u weet dat ze zijn opgelost te controleren. Als u nog meer grondige resultaten wilt, kunt u controleren eerdere problemen een voor een om ervoor te zorgen dat ze zijn verzorgd. Een IT-tester kan zelfs zo ver gaan om delen van de software te testen die nooit eerder zijn getest.

in andere situaties kan regressietest worden uitgevoerd door een testplan uit te voeren op elke versie of update van uw toepassing, te beginnen met de meest recente. Op deze manier kunt u ervoor zorgen dat elke wijziging in uw applicatie adequaat wordt getest.

een woord over Duplicate Testing met hertesting komt de mogelijkheid van duplicate testing. Dit gebeurt wanneer iemand een element van uw software test en er een probleem mee vindt, maar dan wordt er niets gedaan om het te corrigeren of ervoor te zorgen dat het niet opnieuw gebeurt. Om ervoor te zorgen dat dit niet gebeurt, kunt u een database of checklist met problemen van eerdere tests maken, zodat testers deze eenvoudig kunnen gebruiken om dubbele tests te voorkomen.

het is een goed idee om een soort documentatie te hebben voor elk softwareproduct waaraan u werkt; als mensen oudere producten opnieuw testen, kunt u hen vragen om de originele documentatie door te nemen en deze bij te werken met eventuele wijzigingen die ze vinden.

een van de belangrijkste aspecten van hertesten is bij te houden wat de problemen waren, hoe ze werden gevonden en wat er werd gedaan om ze op te lossen. Als een probleem niet is opgelost, maar in plaats daarvan nieuwe problemen worden gecreëerd door de vaststelling van een ander probleem, het zal moeilijk zijn voor u of uw team om te weten wat er mis ging.

hoewel hertesten tijdrovend kan zijn, is het een zeer belangrijk onderdeel van softwarevalidatie en is het vooral nuttig wanneer het wordt gebruikt in combinatie met andere testtechnieken. Zolang de problemen gevonden tijdens hertest worden opgelost, kunt u doorgaan met het opnieuw testen op oudere producten om ervoor te zorgen dat uw nieuwste werk geen problemen heeft veroorzaakt.