Delen via


Een query maken op basis van opbouw- en testintegratievelden

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Gebruik werkitemvelden die ondersteuning bieden voor build- en testintegratie om traceerbaarheid te verbeteren, kwaliteitstrends te analyseren en testgerelateerde werkstromen te automatiseren. Typische scenario's zijn:

  • Koppel bugs aan de specifieke builds waar ze zijn gedetecteerd of opgelost.
  • Bugs opvragen per build om trends te identificeren en oplossingen te prioriteren.
  • Testcases markeren als handmatig of geautomatiseerd en automatiseringsmetagegevens bijhouden.
  • Definieer actie- en validatiestappen voor testcases en gedeelde stappen, zodat teams tests betrouwbaar kunnen uitvoeren en verifiëren.

In dit artikel wordt uitgelegd hoe u deze velden kunt gebruiken en voorbeeldquery's en tips kunt vinden.

Vereiste voorwaarden

Area Machtiging/rol Wat het toestaat
Projectniveau Bijdragers Query's maken en bewerken.
Projectniveau Lezers Query's weergeven (kan niet worden gemaakt of bewerkt).
Projectniveau Projectbeheerders Volledige controle over projectinstellingen, inclusief query's.
Artefacten testen Testplannen beheren Testplannen maken, bewerken en verwijderen.
Artefacten testen Testsuites beheren Testsuites maken, bewerken en verwijderen.
Artefacten testen Werkitems in dit knooppunt bewerken Testspecifieke werkitems toevoegen of bewerken, zoals testcases en testsuites.

Opmerking

  • Sommige testmachtigingen zijn gericht op het testplan of gebiedsknooppunt; projectbeheerders kunnen deze machtigingen toewijzen.
  • Als u query's in projecten wilt uitvoeren of automatiseren, moet u over de vereiste machtigingen voor meerdere projecten beschikken of een serviceaccount gebruiken met de juiste toegang.

Ondersteunde operators en macro's

De meeste bouw- en testintegratievelden maken gebruik van tekenreeks-, PlainText- of HTML-gegevenstypen. Gebruik de volgende operators en macro's wanneer u queryclausules opgeeft voor tekst- of rtf-tekstvelden.

Gegevenstype

Ondersteunde operators en macro's


Rich-text (HTML) en
Tekst met meerdere regels (tekst zonder opmaak)

Contains Words Does Not Contain Words Is Empty Is Not Empty

Tekst met één regel (tekenreeks)

= , <> , > , < , >= , <= , =[Field], <>[Field], >[Field], <[Field], >=[Field], <=[Field] Contains Does Not Contain In Not In In Group Not In Group Was Ever
Macro's: [Any] (geldig met Werkitemtype); @Project (geldig met Teamproject). Het systeem wordt standaard ingesteld op het huidige project, indien van toepassing. Zie Query's uitvoeren voor projecten voor voorbeelden van meerdere projecten.

Nuttige filters

filter voor

Deze queryclausules opnemen

Geautomatiseerde testcases

Work Item Type = Test Case EN Automation Status = Automated

Op query gebaseerde testsuites

Work Item Type = Test Suite EN Test Suite Type = Query Based

Testsuites op basis van vereisten

Work Item Type = Test Suite EN Test Suite Type = Requirement Based

Fouten en de testcases vermelden die ze testen

Maak een nieuwe query, stel het querytype in op Werkitems en directe koppelingen. Filter op bugs op het hoogste niveau en voeg een gekoppeld werkitemsfilter toe voor testcases.

Schermopname van bugs en hun gekoppelde testcases.

Opmerking

U kunt geen query maken waarin een hiërarchische weergave van testplannen, testsuites en testcases wordt weergegeven, omdat deze artefacten niet zijn verbonden door ouder-kind koppelingstypen. Als u deze hiërarchie wilt bekijken, opent u de pagina Testplannen > (zie Een testplan maken).

Gegevensvelden bouwen en testen

In de volgende tabel worden velden beschreven die worden weergegeven in een of meer testgerelateerde werkitemstypen. Zie Werkitemvelden en -kenmerken voor informatie over gegevenstypen en veldkenmerken.

Als u een veld of selectielijst wilt aanpassen, raadpleegt u Een veld toevoegen of wijzigen ter ondersteuning van query's, rapporten en werkstroom.

Veldnaam

Beschrijving

Werkitemtype


Automatiseringsstatus1

De status van een testcase. Waarden: geautomatiseerd, niet geautomatiseerd, gepland. Zie Geautomatiseerde tests uitvoeren vanuit testplannen om tests automatisch uit te voeren.
Verwijzingsnaam=Microsoft.VSTS.TCM.AutomationStatus, gegevenstype=tekenreeks

Testscenario

Te vinden in2

Productbuildnummer (revisie) waarin een fout is gevonden. Verwijzingsnaam=Microsoft.VSTS.Build.FoundIn, gegevenstype=tekenreeks.

Opmerking

Gebruik het koppelingstype Gevonden in build om een werkitem te koppelen aan een build. Dit koppelingstype werkt met huidige buildprocessen (Azure Pipelines en klassieke builddefinities); het is niet van toepassing op verouderde XAML-builds.

Insect

Integratieversie2

Buildnummer van product waarin de oplossing is opgenomen. Verwijzingsnaam=Microsoft.VSTS.Build.IntegrationBuild, gegevenstype=tekenreeks.

Opmerking

Gebruik het koppelingstype Geïntegreerd in build om een werkitem te koppelen aan een build. Dit koppelingstype werkt met huidige buildprocessen (Azure Pipelines en klassieke builddefinities); het is niet van toepassing op verouderde XAML-builds.

Alle

Probleem

Geeft aan of gedeelde stappen zijn gekoppeld aan een verwacht resultaat. Toegestane waarden: Ja, Nee. Verwijzingsnaam=Microsoft.VSTS.Common.Issue, gegevenstype=tekenreeks.

Gedeelde stappen

Parameterwaarden

Bevat parameters die worden gebruikt bij het uitvoeren van een handmatige test. Verwijzingsnaam=Microsoft.VSTS.TCM.Parameters, gegevenstype=HTML.

Gedeelde parameters, gedeelde stappen, testcase

Stappen

Actie- en validatiestappen die nodig zijn om de test uit te voeren. Verwijzingsnaam=Microsoft.VSTS.TCM.Steps, gegevenstype=HTML.

Gedeelde stappen, testcase

Systeemgegevens

Systeem- en omgevingsinformatie die relevant is voor de test. Verwijzingsnaam=Microsoft.VSTS.TCM.SystemInfo, gegevenstype=HTML.

Fout, antwoord op feedback

Stappen voor opnieuw uitvoeren (stappen om te herhalen)

Stappen die nodig zijn om onverwacht gedrag te reproduceren. Leg voldoende informatie vast zodat anderen herstellingen kunnen reproduceren en valideren. Verwijzingsnaam=Microsoft.VSTS.TCM.ReproSteps, gegevenstype=HTML.

Insect

Test Suite type1

Categorie van testsuite. Toegestane waarden: op query gebaseerd, op vereiste gebaseerd, statisch. Zie Een testplan maken voor meer informatie. Verwijzingsnaam=Microsoft.VSTS.TCM.TestSuiteType, gegevenstype=tekenreeks.

TestSuite

Opmerking

  1. Pas de selectielijst voor deze velden niet aan. De systeem- en integraties verwachten de vermelde waarden.
  2. Door een GLOBALLIST element toe te voegen aan een FIELD definitie, kunt u een vervolgkeuzelijst met builds opgeven. Zie Builds en globale lijst voor automatisch aanvullen.

Andere velden

De volgende velden worden niet weergegeven in werkitemformulieren, maar worden bijgehouden voor testcases of testsuites. U kunt een aantal van deze query's gebruiken om query's te filteren en rapporten te maken. (Deze velden worden niet toegevoegd aan het datawarehouse of geïndexeerd.)

Veldnaam

Beschrijving

Werkitemtype


Geautomatiseerde testopslag

De assembly die de test bevat waarmee de testcase wordt geautomatiseerd. Verwijzingsnaam=Microsoft.VSTS.TCM.AutomatedTestStorage, gegevenstype=tekenreeks.

Testscenario

Geautomatiseerd testtype

Het type test waarmee de testcase wordt geautomatiseerd. Verwijzingsnaam=Microsoft.VSTS.TCM.AutomatedTestType, gegevenstype=tekenreeks.

Testscenario

AutomatedTestId

De id van de geautomatiseerde test. Verwijzingsnaam=Microsoft.VSTS.TCM.AutomatedTestId, gegevenstype=tekenreeks.

Testscenario

GeautomatiseerdeTestNaam

De naam van de geautomatiseerde test. Verwijzingsnaam=Microsoft.VSTS.TCM.AutomatedTestName, gegevenstype=tekenreeks.

Testscenario

LocalDataSource

De lokale gegevensbron die door de test wordt gebruikt. Verwijzingsnaam=Microsoft.VSTS.TCM.LocalDataSource, gegevenstype=HTML.

Testscenario

Querytekst

Veld dat wordt gebruikt om de query vast te leggen die is gedefinieerd voor een op query's gebaseerd suitetype. Verwijzingsnaam=Microsoft.VSTS.TCM.QueryText, gegevenstype=PlainText.

TestSuite

Test Suite Audit

Houdt bewerkingen bij bij het wijzigen van een testpakket (bijvoorbeeld het toevoegen van tests of het wijzigen van configuraties). Zichtbaar via het tabblad Geschiedenis of een query. Verwijzingsnaam=Microsoft.VSTS.TCM.TestSuiteAudit, gegevenstype=PlainText.

TestSuite

Type-id van testpakket 1

Door het systeem toegewezen waarde die overeenkomt met de categorie testsuite: 1 (statisch), 2 (op query's gebaseerd), 3 (op basis van vereisten). Verwijzingsnaam=Microsoft.VSTS.TCM.TestSuiteTypeId, gegevenstype=Geheel getal.

TestSuite

Opmerking

  1. Pas de selectielijst voor deze velden niet aan. De systeem- en integraties verwachten de vermelde waarden.

Velden die zijn geïntegreerd met Team Foundation Build en Azure Pipelines

Team Foundation Build is het on-premises buildsysteem dat wordt gebruikt met oudere Versies van Azure DevOps Server. Azure Pipelines biedt in de cloud gehoste build- en pijplijnfuncties in Azure DevOps Services. Beide systemen integreren buildmetagegevens met werkitems wanneer builds worden uitgevoerd en wanneer werkitems worden opgelost in builds.

De twee velden die vaak worden gebruikt voor build-integratie, zijn Gevonden in en Integration Build. Als ze in een WIT-definitie voorkomen, stelt het een buildsysteem in staat om werkitems te koppelen aan de relevante buildnummers.

U kunt deze velden toevoegen aan een WIT-definitie:

<FIELD name="Found In" refname="Microsoft.VSTS.Build.FoundIn" type="String" reportable="dimension">
    <HELPTEXT>Product build number (revision) in which this item was found</HELPTEXT>
        <SUGGESTEDVALUES>
          <LISTITEM value="&lt;None&gt;" />
        </SUGGESTEDVALUES>
</FIELD>
<FIELD name="Integration Build" refname="Microsoft.VSTS.Build.IntegrationBuild" type="String" reportable="dimension">
    <HELPTEXT>Product build number this bug was fixed in</HELPTEXT>
        <SUGGESTEDVALUES>
          <LISTITEM value="&lt;None&gt;" />
        </SUGGESTEDVALUES>
</FIELD>

Wanneer het veld Gevonden in bestaat in een WIT-definitie, kan een compatibel buildproces een werkitem maken wanneer een build mislukt en Gevonden in instellen op het buildnummer. Wanneer integratiebuild bestaat, kan een compatibel buildproces werkitems bijwerken die zijn opgelost door een build met het bijbehorende buildnummer.

Automatische inpopulatie van builds en globale lijsten

De eerste keer dat u een build voor een project in de wachtrij zet met Team Foundation Build of Azure Pipelines, maakt het systeem een globale lijst met de naam Build - <ProjectName>. Elke builduitvoering voegt een LISTITEM vermelding voor die build toe. De globale lijst gebruikt de weergavenaam van het project en kan als referentie worden gebruikt in een GLOBALLIST element in een FIELD definitie om een vervolgkeuzelijst van builds te maken.

<FIELD name="Found In" refname="Microsoft.VSTS.Build.FoundIn" type="String" reportable="dimension">
    <HELPTEXT>Product build number (revision) in which this item was found</HELPTEXT>
        <SUGGESTEDVALUES>
          <LISTITEM value="&lt;None&gt;" />
        </SUGGESTEDVALUES>
        <SUGGESTEDVALUES expanditems="true" filteritems="excludegroups">
          <GLOBALLIST name="Builds - TeamProjectName" />
        </SUGGESTEDVALUES>
</FIELD>

Velden die zijn geïntegreerd met testplannen

Testplannen kunnen een bug of een ander werkitem maken wanneer een test mislukt. Wanneer u een werkitem op deze manier toevoegt, legt het testsysteem omgevingsgegevens en reproductiestappen vast in de velden Systeemgegevens en Stappen voor opnieuw proberen .

<FIELD name="System Info" refname="Microsoft.VSTS.TCM.SystemInfo" type="HTML" />
<FIELD name="Repro Steps" refname="Microsoft.VSTS.TCM.ReproSteps" type="HTML" />

Velden die zijn geïntegreerd met Team Foundation Version Control (TFVC)

TFVC ondersteunt het koppelen of omzetten van werkitems tijdens het inchecken. Wanneer u een werkitem koppelt vanuit het check-invenster en de actie wordt ondersteund, past TFVC de geconfigureerde statusovergang toe op het werkitem.

Opmerking

Wanneer u de actie Checkin gebruikt, stelt u de juiste statussen in van en naar de overgang die u verwacht.

Zie Veldtoewijzingen automatiseren op basis van Status, Overgang of Reden voor meer informatie.

Beperkingen

Belangrijke beperkingen bij het opvragen van testcases:

  • Hiërarchische weergaven: U kunt geen query maken waarin een hiërarchische weergave van testplannen, testsuites en testcases wordt weergegeven, omdat deze artefacten niet zijn verbonden met bovenliggende en onderliggende koppelingstypen.
  • Op query's gebaseerde testsuites: op query's gebaseerde suites bevatten elke testcase die door de query wordt geretourneerd; zorg ervoor dat uw query nauwkeurig is om onbedoelde insluitingen te voorkomen.
  • Veldbeperkingen: sommige gedetailleerde uitvoeringsresultaten zijn niet beschikbaar als standaardvelden en vereisen mogelijk aangepaste rapportage of API-gebruik.
  • Prestatie- en frequentielimieten: Azure DevOps dwingt aanvraag- en resourcelimieten af; niet-geoptimaliseerde query's of overmatige API-aanroepen kunnen vertragingen of beperking veroorzaken.
  • Testcase-koppeling: Testcases koppelen niet automatisch op een manier aan andere werkitems die ondersteuning biedt voor complexe hiërarchische query's.