Bugtracking, het melden en oplossen van bugs zijn integrale processen in softwareontwikkeling. Van al deze taken lijkt het melden misschien de minst belangrijke, maar dat is niet zo. Hoe beter het rapport, hoe sneller de bug wordt opgelost. Als het rapport daarentegen niet alle essentiële details bevat of dit op de verkeerde manier doet, zal het oplossen van de bug meer tijd, moeite en geld kosten.
We hebben de meest efficiënte praktijken voor het melden van bugs verzameld die nuttig zullen zijn voor beginnende QA-testers.
Hoe schrijf je een bugrapport? Beste voorbeelden en praktijken
Je hebt een bug gedetecteerd, dus je volgende stap is om deze te melden. Hier zijn de aanbevelingen voor het maken van een effectief bugrapport.
Verstrek alle essentiële details
Een goed bugrapport moet bevatten:
Bugnummer
Elk rapport moet een unieke bug-ID hebben – deze wordt gebruikt om naar een specifiek probleem te verwijzen bij het bespreken, prioriteren en oplossen ervan. Als u een geautomatiseerde bugrapportagetool gebruikt (of iets universeels als Jira), wordt het nummer automatisch aangemaakt en aan uw rapport toegevoegd.
Titel
Een titel moet kort uitleggen wat er mis is. Bijvoorbeeld: «De knop Contact opnemen werkt niet». Door naar de titel te kijken, krijgt uw team een basisidee van het probleem en begrijpt het of het eerder is voorgekomen.
Omgeving
Als u de omgeving niet specificeert, kan het onmogelijk zijn om de bug te reproduceren. U hebt bijvoorbeeld een bug gedetecteerd in de iOS-versie van de app. Vervolgens probeerde een ontwikkelaar deze te reproduceren in de Android-versie, maar er gebeurde niets – alles werkte prima. Zulke situaties zijn mogelijk, dus geef altijd details over de omgeving. Deze kunnen het volgende omvatten:
- – Apparaat (specificeer het exacte model)
- – OS en de versie ervan
- – Gebruikt account
- – App-versie
- – Browser en de versie ervan
- – Verbindingstype
Stappen om te reproduceren
Elke bug moet reproduceerbaar zijn, anders wordt deze niet opgelost. Beschrijf daarom bij het maken van uw rapport stap voor stap welke acties tot het optreden van de bug leiden. Laat niets weg, zelfs de meest voor de hand liggende details zoals inloggen op het systeem. Het zou ook nuttig zijn om te proberen de bug meerdere keren zelf te reproduceren en vervolgens aan te geven hoeveel pogingen succesvol waren wat betreft bugactivering.
Verwacht resultaat
Leg uit wat er zou moeten gebeuren als u de reproductiestappen uitvoert wanneer alles correct werkt. Als we het voorbeeld van «De knop Contact opnemen werkt niet» nog een keer nemen, kan het verwachte resultaat er als volgt uitzien: «Het contactformulier wordt weergegeven».
Werkelijk resultaat
Hier moet u de bug zelf beschrijven. Wat gebeurt er nadat u alle reproductiestappen hebt uitgevoerd? Wat is er mis? Hier is een voorbeeld: «Het contactformulier wordt niet weergegeven».
Bewijs
Voeg afbeeldingen en video’s toe – dit versnelt het proces van bugreproductie.
Ernst
Hoe kritiek is de bug? Welke impact heeft deze op de functionaliteit van het systeem? Deze informatie helpt managers bij het prioriteren van hun taken, wat vooral belangrijk is wanneer er tal van bugs zijn om op te lossen. Een bug die het gebruik van de app blokkeert, moet bijvoorbeeld als kritiek worden gemarkeerd, maar als er iets is als een typfout in de tekst, kunt u het als triviaal markeren.
Uw naam
Specificeer uw naam en contactgegevens, zodat de ontwikkelaars gemakkelijk contact met u kunnen opnemen. Dit kan nodig zijn als u geen speciale testsoftware gebruikt voor het melden van bugs.
Voordat we verder gaan met de volgende aanbeveling, bekijk dit voorbeeld van een goed bugrapport in Jira. Het bevat het bugnummer (automatisch gegenereerd), titel, omgeving, reproductiestappen (samen met een voorwaarde), zowel verwachte als werkelijke resultaten, video, prioriteit en de naam van de reporter:
Wees specifiek
Vermijd het schrijven van een heel essay – u moet bij de zaak blijven en specifiek zijn. Geef gewoon alle essentiële details (we hebben ze in de vorige paragraaf beschreven), leg duidelijk uit wat er precies mis is en hoe de bug te reproduceren, en dat is het.
Aarzel niet
Als u een bug detecteert, stel dan het aanmaken van het rapport niet uit. Doe het meteen – anders kunt u essentiële stappen voor de reproductie vergeten of gewoon vergeten een rapport te schrijven. Dit is vooral belangrijk voor kritieke bugs die zo snel mogelijk moeten worden opgelost.
Controleer het rapport dubbel
Nadat u klaar bent met het schrijven van het rapport, lees het dan nog een keer. Kunnen sommige zinnen verkeerd worden geïnterpreteerd? Is er iets onduidelijk? Zo ja, pak deze problemen aan voordat u het rapport verzendt. Als u dit niet doet, zal het oplossen van de bug langer duren.
Vermijd kritiek
Uiteraard zijn bugs irritant, maar het bekritiseren van de ontwikkelaars maakt uw rapport niet beter en effectiever. Wees discreet (zelfs als de bug erg vervelend is of opnieuw optreedt nadat deze had moeten worden opgelost), en beschrijf gewoon duidelijk het probleem. Onthoud dat een goed rapport een rapport is dat in een eenvoudige, droge taal is geschreven zonder enige belediging.
Gebruik tools en services
Hier zijn enkele van de meest handige tools en services die door worden gebruikt:
Jira
We hebben Jira al vermeld, en als uw team het gebruikt, zal het erg handig voor u zijn om daar bugrapporten aan te maken. U hoeft alleen het relevante project te kiezen, het issue type (bug) op te geven, de samenvatting en beschrijving toe te voegen. Afbeeldingen en video’s kunnen ook worden bijgevoegd. Bovendien, als u weet wie dit probleem kan aanpakken, kunt u het rechtstreeks aan die persoon toewijzen.
HipTest Publisher
De missie van de HipTest Publisher tool (voorheen bekend als HipTest) is het lezen van testmanagementprojecten uit CucumberStudio. Met HipTest kunt u testscenario’s schrijven, projecten en testruns exporteren, de resultaten naar CucumberStudio pushen. Wat nog handiger is, is dat u Jira bugrapporten rechtstreeks vanuit HipTest kunt aanmaken.
Backlog
De Backlog bugrapportagesoftware biedt tal van nuttige oplossingen, zoals project- en taakbeheer, workflowbeheer, versiebeheer. Bugrapportage is daar één van. U kunt bug-issues aanmaken en prioriteren en de voortgang volgen, net als in Jira. Het is ook mogelijk om Jira-gegevens te importeren in Backlog.
ReQtest
De functies van ReQtest omvatten requirements management, test management, integratie met testautomatisering, Jira-integratie en uiteraard bugtracking. Bugs kunnen worden gemeld vanuit de mislukte teststappen. Het bijvoegen van afbeeldingen en video’s is ook mogelijk.
Bird Eats Bug
Bird Eats Bug is een Chrome-extensie die het mogelijk maakt om bugs vast te leggen door middel van schermopnames. Het rapport bevat netwerk- en consolelogs, en systeeminformatie. De opnametijd is onbeperkt en de microfoon kan ook worden gebruikt. Elke opname kan worden voorzien van een beschrijving waarin u indien nodig aanvullende details kunt verstrekken. U kunt ook screenshots maken die ook voorzien zijn van consolelogs en andere belangrijke gegevens. Bird Eats Bug kan worden geïntegreerd met andere tools en services zoals Jira en Slack, zodat u uw rapporten rechtstreeks daar naartoe kunt sturen.
Slotgedachten
Om een goed bugrapport te maken, moet u specifiek zijn en alle details verstrekken, zoals het bugnummer, de titel, de omgeving, de reproductiestappen, het verwachte en werkelijke resultaat, screenshots en/of video’s, de ernst, en uw naam samen met contactgegevens. Schrijf uw rapporten in duidelijke taal, bekritiseer de ontwikkelaars niet en controleer de rapporten dubbel voordat u ze verzendt. En aarzel uiteraard niet om uw rapporten te schrijven en te verzenden – doe dit direct nadat u een bug hebt gedetecteerd.
Wat betreft tools en services, Jira is een van de meest populaire en handige opties, en uw team gebruikt het mogelijk al. Maak in dat geval geen gebruik van de functies ervan. In ieder geval moet het hele team één platform voor projectbeheer gebruiken, aangezien dit een goede samenwerking en effectieve taakuitvoering garandeert. Sommige tools (zoals Bird Eats Bug) kunnen echter onafhankelijk worden gebruikt dankzij hun integratiefuncties.
