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.
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.
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 .
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.
Développer
TestSuite
Choisissez le bouton Développer.
Sélectionnez les champs à aplatir.
La table contient désormais le champ d’entité de
TestSuite.IdLevel3
etTestSuite.TitleLevel3
.
Cliquez avec le bouton droit sur un en-tête de colonne, puis sélectionnez Renommer...
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.
Créer le rapport de table
- Sous Visualisations, choisissez Table.
- Glisser-déplacer
TestSuite.TitleLevel3
,NotRunCount
,RunCount
,PassedCount
sousTotalCount
Colonnes. - Sélectionnez Somme en tant qu’agrégation pour Count.
Votre rapport doit ressembler à l’image suivante.