Delen via


Flaky tests beheren

Azure DevOps Services

Productiviteit voor ontwikkelaars is afhankelijk van de mogelijkheid van tests om op een tijdige en betrouwbare manier echte problemen te vinden met de code die wordt ontwikkeld of bijgewerkt. Flaky tests vormen een barrière voor het vinden van echte problemen, omdat de fouten vaak niet betrekking hebben op de wijzigingen die worden getest. Een flaky test is een test die verschillende resultaten biedt, zoals geslaagd of mislukt, zelfs als er geen wijzigingen in de broncode of uitvoeringsomgeving zijn. Flaky tests hebben ook invloed op de kwaliteit van verzonden code.

Notitie

Deze functie is alleen beschikbaar in Azure DevOps Services. Normaal gesproken worden eerst nieuwe functies geïntroduceerd in de cloudservice en vervolgens on-premises beschikbaar gesteld in de volgende primaire versie of update van Azure DevOps Server. Zie de tijdlijn voor Azure DevOps-functies voor meer informatie.

Het doel van het brengen van flaky testmanagement in het product is het verminderen van de pijn van ontwikkelaars door flaky tests en tegemoet te komen aan de hele werkstroom. Flaky testbeheer biedt de volgende voordelen.

  • Detectie : automatische detectie van flaky test met opnieuw uitvoeren of uitbreidbaarheid om uw eigen aangepaste detectiemethode aan te sluiten

  • Beheer van flakiness - Zodra een test is gemarkeerd als flaky, zijn de gegevens beschikbaar voor alle pijplijnen voor die vertakking

  • Rapport over flaky tests - Mogelijkheid om te kiezen of u buildfouten wilt voorkomen die worden veroorzaakt door flaky tests of gebruik de flaky tag alleen voor probleemoplossing

  • Oplossing : handmatig fouten maken of handmatig markeren en de markeringstest opheffen als flaky op basis van uw analyse

  • Sluit de lus - Stel de flaky test opnieuw in als gevolg van foutomzetting/handmatige invoer

Flaky levenscyclus

Flaky testbeheer inschakelen

Als u flaky testbeheer wilt configureren, kiest u Projectinstellingen en selecteert u Testbeheer in de sectie Pijplijnen.

Schuif de knop Aan/Uit naar Aan.

Schermopname van Testbeheer, Flaky-testdetectie ingeschakeld, Systeemdetectie.

De standaardinstelling voor alle projecten is het gebruik van flaky tests voor probleemoplossing.

Flaky testdetectie

Flaky testbeheer ondersteunt systeem- en aangepaste detectie.

  • Systeemdetectie: De in-product flaky detectie maakt gebruik van testgegevens voor opnieuw uitvoeren. De detectie vindt plaats via het opnieuw uitvoeren van de VSTest-taak van de mogelijkheid voor mislukte tests of het opnieuw proberen van fase in de pijplijn. U kunt specifieke pijplijnen selecteren in het project waarvoor u flaky tests wilt detecteren.

    Notitie

    Zodra een test als flaky is gemarkeerd, zijn de gegevens beschikbaar voor alle pijplijnen voor die vertakking om te helpen bij het oplossen van problemen in elke pijplijn.

  • Aangepaste detectie: u kunt uw eigen flaky detectiemechanisme integreren met Azure Pipelines en de rapportagemogelijkheid gebruiken. Met aangepaste detectie moet u de metagegevens van de testresultaten bijwerken voor flaky tests. Zie Testresultaten, Resultaatmetagegevens - REST API bijwerken voor meer informatie.

Schermopname van Testbeheer, Flaky-testdetectie ingeschakeld, Aangepaste detectie.

Opties voor flaky testen

De flaky testopties geven aan hoe flaky tests beschikbaar zijn in testrapportage en oplossingsmogelijkheden, zoals beschreven in de volgende secties.

Flaky testbeheer en rapportage

Op de pagina Testbeheer onder Flaky testopties kunt u opties instellen voor de wijze waarop flaky tests worden opgenomen in het rapport Testoverzicht. Flaky testgegevens voor zowel geslaagde als mislukte tests zijn beschikbaar in testresultaten. Met de flaky-tag kunt u flaky tests identificeren. Standaard worden flaky tests opgenomen in de testsamenvatting. Als u er echter voor wilt zorgen dat flaky testfouten niet mislukken in uw pijplijn, kunt u ervoor kiezen deze niet op te nemen in uw testoverzicht en de testfout te onderdrukken. Met deze optie zorgt u ervoor dat flaky tests (zowel geslaagd als mislukt) worden verwijderd uit het wachtwoordpercentage en worden weergegeven in Tests die niet zijn gerapporteerd, zoals wordt weergegeven in de volgende schermopname.

Flaky Rapportage

Notitie

Het overzichtsrapport Test wordt alleen bijgewerkt voor de visual Studio-testtaak en de taak Testresultaten publiceren. Mogelijk moet u een aangepast script toevoegen om flaky testfouten voor andere scenario's te onderdrukken.

Tests gemarkeerd als flaky

U kunt een test markeren of als flaky markeren op basis van analyse of context door Flaky (of UnFlaky) te kiezen, afhankelijk van of de test al als flaky is gemarkeerd.)

Mark flaky Test

Wanneer een test wordt gemarkeerd als flaky of ontvlambaar in een pijplijn, worden er geen wijzigingen aangebracht in de huidige pijplijn. Alleen bij toekomstige uitvoeringen van die test wordt de gewijzigde flaky instelling geëvalueerd. Tests die als flaky zijn gemarkeerd, hebben de gemarkeerde flaky tag in de gebruikersinterface.

Test bevestigen

Help en ondersteuning