Delen via


Impact testen voor gedeeltelijk toegewezen TFVC-opslagplaatsen in TFS/Azure DevOps Services

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Test Impact Analysis (TIA) maakt deel uit van de VSTest-taak vanaf versie 2 van de taak. Met deze functie kunt u de DevOps-cyclus versnellen door alleen relevante tests voor een build uit te voeren. In feite voert u tests uit die worden beïnvloed door binnenkomende wijzigingen en niet de hele testsuite. Zie Test Impact Analysis (TIA) gebruiken voor meer informatie over testimpactanalyse.

Naast ondersteuning voor GitHub en Git in Azure DevOps biedt TIA ook ondersteuning voor TFVC. In dit artikel wordt een bekende beperking beschreven over TIA in build-/release-pijplijnen op basis van TFVC en een oplossing om deze beperking te omzeilen.

Probleem met gedeeltelijk toegewezen TFVC-opslagplaatsen

De manier waarop TIA werkt, is door gegevens te verzamelen over de bestanden die een testmethode raakt tijdens de eerste uitvoering, ook wel de basislijnuitvoering genoemd. De collector die deze gegevens verzamelt, heeft alleen zichtbaarheid van de opslagplaats die is ingeschreven op de agentcomputer. Met OP TFVC gebaseerde pijplijnen krijgt u een optie om gedeeltelijke opslagplaatsen in te schakelen. Denk bijvoorbeeld aan een opslagplaats met de volgende structuur.

Structuur van TFVC-opslagplaats

In de build-/release-pijplijn ziet u nu de tegel Bronnen ophalen onder Proces , zoals wordt weergegeven in het volgende voorbeeld.

Bronnen ophalen

Selecteer Bronnen ophalen en u ziet opties op de rechterblade om uw opslagplaats gedeeltelijk toe te wijzen.

Mapopslagplaats

Als u de hele opslagplaats opneemt, zoals wordt weergegeven in het vorige voorbeeld, blijft TIA prima werken, maar als u gedeeltelijk opneemt, zoals wordt weergegeven in het volgende voorbeeld, kan TIA de betrokken tests niet vinden.

Gedeeltelijk toegewezen opslagplaats

Wanneer een TFVC-opslagplaats gedeeltelijk is ingeschreven, kan TIA de betrokken tests niet vinden omdat de collector alleen wijzigingen kan verzamelen voor de gedeeltelijk in de agent vermelde opslagplaats en geen zichtbaarheid van het hele pad heeft. Wanneer een code wordt gewijzigd van de server, wordt het hele pad geboden en mislukt de overeenkomende poging met het toegewezen pad.

Tijdelijke oplossing

U kunt dit probleem omzeilen door de gedeeltelijke opslagplaats toe te wijzen aan de volledige codestructuur op de server, zodat het volledige pad van de bestanden op uw lokale lijst overeenkomt met het volledige serverpad. Hiervoor kunt u een lokaal pad opgeven dat overeenkomt met het serverpad , zoals wordt weergegeven in het volgende voorbeeld.

Oplossing voor gedeeltelijk toegewezen opslagplaats

Dit zorgt ervoor dat het serverpad overeenkomt met het pad dat is verzameld door de collector en beïnvloede tests correct worden weergegeven.