Exemple de rapport d’exemples de vues agrégées de suites de tests manuels

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

Vous pouvez signaler l’état d’exécution d’une ou plusieurs suites de test. Le rapport que vous créez à l’aide des informations contenues dans cet article est similaire à l’image suivante.

Capture d’écran de l’affichage agrégé des suites de tests Power BI - Rapport.

Comme illustré dans l’image suivante, les suites de test peuvent être organisées au sein d’une organisation hiérarchique. Comme indiqué, il existe trois suites de test avec les mêmes noms sous deux suites de test étiquetées Australie et Asie. Cet article explique comment agréger des données pour un niveau de suite de test spécifique.

Capture d’écran de la structure du plan de test Power BI pour l’affichage agrégé.

Important

L’intégration de Power BI et l’accès au flux OData du service Analytics sont généralement disponibles pour Azure DevOps Services et Azure DevOps Server 2020 et versions ultérieures. Les exemples de requêtes fournis dans cet article sont valides uniquement sur Azure DevOps Server 2020 et versions ultérieures, et dépendent de la version v3.0-preview ou ultérieure. Nous vous encourageons à utiliser ces requêtes et à nous fournir des commentaires.

Prérequis

  • Accès : être membre d’un projet avec au moins un accès de base .
  • Autorisations : par défaut, les membres du projet ont l’autorisation d’interroger Analytics et de créer des vues.
  • Pour plus d’informations sur les autres prérequis concernant l’activation du service et des fonctionnalités et les activités de suivi des données générales, consultez Autorisations et conditions préalables pour accéder à Analytics.

Remarque

Cet article part du principe que vous lisez la vue d’ensemble des exemples de rapports à l’aide de requêtes OData et que vous avez une compréhension de base de Power BI.

Pour que le rapport génère des données utiles, l’équipe doit effectuer les activités suivantes pour gérer les plans de test :

  • Définissez des plans de test, des suites de test et des cas de test. Spécifiez leur état. Pour qu’une suite de tests s’exécute, elle doit être dans l’état En cours. Pour qu’un cas de test s’exécute, il doit être dans l’état Prêt. Pour plus d’informations, consultez Créer des plans de test et des suites de tests et créer des cas de test manuels.

  • Exécutez des tests manuels et vérifiez les résultats. Marquez les résultats de chaque étape de validation dans le cas de test comme ayant réussi ou échoué. Pour plus d’informations, consultez Exécuter des tests manuels.

    Remarque

    Les testeurs doivent marquer une étape de test avec un état s’il s’agit d’une étape de test de validation. Le résultat global d’un test reflète l’état de toutes les étapes de test marquées. Par conséquent, le test aura un état d’échec si une étape de test est marquée comme ayant échoué ou non marquée.

Exemples de requêtes

Vous pouvez utiliser les requêtes suivantes de l’ensemble TestPoints d’entités pour créer des rapports de suite de tests agrégés.

Remarque

Pour déterminer les propriétés disponibles à des fins de filtre ou de rapport, consultez la référence des métadonnées pour Test Plans Analytics. Vous pouvez filtrer vos requêtes ou renvoyer des propriétés à l’aide de l’une Property des valeurs sous ou EntityType des NavigationPropertyBinding Path valeurs disponibles avec un EntitySet. Chaque EntitySet correspond à un EntityType. Pour plus d’informations sur le type de données de chaque valeur, passez en revue les métadonnées fournies pour le type de données correspondant EntityType.

Copiez et collez la requête Power BI suivante directement dans la fenêtre Obtenir une requête vide de données>. Pour plus d’informations, consultez Vue d’ensemble des exemples de rapports à l’aide de requêtes OData.

let 
    Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v3.0-preview/TestPoints?" 
        &"$apply=filter((TestSuite/TestPlanTitle eq '{testPlanTitle}' and TestSuite/IdLevel3 ne null))" 
            &"/groupby(" 
                &"(TestSuite/TitleLevel3)," 
                &"aggregate(" 
                    &"$count as TotalCount," 
                    &"cast(LastResultOutcome eq 'Passed', Edm.Int32) with sum as PassedCount," 
                    &"cast(LastResultOutcome eq 'Failed', Edm.Int32) with sum as FailedCount," 
                    &"cast(LastResultOutcome eq 'None', Edm.Int32) with sum as  NotRunCount," 
                    &"cast(LastResultOutcome ne 'None', Edm.Int32) with sum as RunCount" 
            &")" 
        &")" 
        &"/compute(" 
            &"RunCount mul 100 div TotalCount as RunPercentage," 
            &"NotRunCount mul 100 div TotalCount as NotRunPercentage," 
            &"iif(TotalCount gt NotRunCount, PassedCount mul 100 div RunCount,0) as PassedPercentage," 
            &"iif(TotalCount gt NotRunCount, FailedCount mul 100 div RunCount,0) as FailedPercentage" 
        &")" 
        &"&$orderby=RunPercentage desc", null, [Implementation="2.0"]) 
in 
    Source 

Chaînes de substitution et répartition des requêtes

Remplacez les chaînes suivantes par vos valeurs. N’incluez pas de crochets {} avec votre substitution. Par exemple, si le nom de votre organisation est « Fabrikam », remplacez par {organization}Fabrikam, et non {Fabrikam}par .

  • {organization} - Nom de votre organisation
  • {project} - Nom de votre projet d’équipe ou omettre entièrement « /{projet} » pour une requête inter-projets
  • {testPlanTitle} - Titre du plan de test dont vous souhaitez retourner les données.

Répartition des requêtes

Le tableau suivant décrit chaque partie de la requête.

Composant de requête

Description

filter((TestSuite/TestPlanTitle eq '{testPlanTitle}' and TestSuite/IdLevel3 ne null))

Renvoyer des données pour un plan de test sélectionné uniquement. Retournez également les données pour les suites de test de niveau 3. Vous pouvez ajouter plusieurs plans avec une clause telle que filter((TestSuite/TestPlanTitle eq '{testPlanTitle1}' or TestSuite/TestPlanTitle eq '{testPlanTitle2}' and TestSuite/IdLevel3 ne null)). Vous pouvez également appliquer tous les autres filtres liés aux suites de tests, les configurations de test ici.

/groupby((TestSuite/TitleLevel3),

Suites de test à regrouper. Si vous souhaitez obtenir un rapport pour toutes les suites de tests distinctes ment au niveau 3 de la hiérarchie de suite de tests, vous pouvez spécifier cette partie de requête. Vous pouvez modifier le numéro de niveau de 1 à 14. Si vous souhaitez séparer les suites de test avec le même nom, vous pouvez utiliser /groupby((TestSuite/TitleLevel3, TestSuite/IdLevel3), pour vous assurer que même si vous avez deux suites de test portant le même nom, elles seront affichées sous la forme de deux entrées différentes, car elles auraient deux ID différents.

/aggregate($count as TotalCount,

Agréger des données sur les points de test filtrés avec un nombre égal TotalCountà .

cast(LastResultOutcome eq 'Passed', Edm.Int32) with sum as Passed,

Lors de l’agrégation, les points de test de cast de type ont le résultat d’exécution le plus récent « Passé » à 1 et les additionnez en tant que métrique «Passed ».

/compute(Executed mul 100 div TotalCount as ExecPct

Fournissez une métrique calculée ExecPct égale à (points de test exécutés / Nombre total * 100).

(Facultatif) Renommer la requête

Vous pouvez renommer l’étiquette de requête par défaut , Query1, en quelque chose de plus significatif. Entrez simplement un nouveau nom dans le volet Paramètres de requête .

Capture d’écran des options de menu de requête Power BI, renommer la requête.

Développer des colonnes dans Éditeur Power Query

Avant de créer le rapport, vous devez développer la TestSuite colonne pour aplatir les enregistrements dans des champs spécifiques. Pour en savoir plus, consultez Transform Analytics pour générer des rapports Power BI.

Dans Power BI, procédez comme suit.

Une fois terminé, vous pouvez choisir de renommer des colonnes.

  1. Développer TestSuite

    • Choisissez le bouton Développer.

      Power BI Expand Test Suite

    • Sélectionnez les champs à aplatir.

      Power BI sélectionne les champs à aplatir

    • La table contient désormais le champ d’entité de TestSuite.IdLevel3 et TestSuite.TitleLevel3.

      Suite de tests développée par Power BI

  2. Cliquez avec le bouton droit sur un en-tête de colonne, puis sélectionnez Renommer...

    Capture d’écran de la transformation de données Power BI, renommer des colonnes.

Modifier le type de données de colonne

Dans le Éditeur Power Query, sélectionnez toutes les colonnes contenant des nombres, telles que TotalCount, RunCount et Passed. Sélectionnez Type de données dans le menu Transformer, puis choisissez Nombre entier. Pour plus d’informations sur la modification du type de données, consultez Transform Analytics pour générer des rapports Power BI, Transformer un type de données de colonne.

(Facultatif) Renommer des champs de colonne

Vous pouvez renommer des champs de colonne. Par exemple, vous pouvez renommer la colonne NotApplicable en Not Applicable, ou TotalCount en Total Count. Pour savoir comment procéder, consultez Renommer les champs de colonne.

Fermez la requête et appliquez vos modifications

Une fois que vous avez terminé toutes vos transformations de données, choisissez Fermer & Appliquer dans le menu Accueil pour enregistrer la requête et revenir à l’onglet Rapport dans Power BI.

Capture d’écran de Éditeur Power Query’option Fermer et appliquer.

Créer le rapport de table

  1. Sous Visualisations, choisissez Table.
  2. Glisser-déplacer TestSuite.TitleLevel3, NotRunCount, RunCount, PassedCountsous TotalCount Colonnes.
  3. Sélectionnez Somme en tant qu’agrégation pour Count.

    Capture d’écran de Power BI, sélectionnez Somme en tant qu’agrégation.

Votre rapport doit ressembler à l’image suivante.

Capture d’écran de l’exemple de suite de test Power BI - Vue agrégée - Rapport.