Partager via


Format YAML de Power Apps Test Engine (version préliminaire)

[Cette rubrique fait partie de la documentation en version préliminaire et peut faire l'objet de modifications.]

Les tests sont définis au format YAML en suivant les mêmes directives que Power Fx. En savoir plus sur la grammaire de la formule YAML de Power Fx.

Consultez le dossier PowerApps-TestEngine/samples pour obtenir des exemples détaillés.

Définition du schéma YAML

Propriété Description
testSuite Définit une suite de tests, les cas de test dans la suite de tests et la configuration spécifique à la suite de tests
testSettings Définit les paramètres de la suite de tests qui sont réutilisés dans plusieurs cas de test
environmentVariables Définit les variables qui peuvent potentiellement changer lorsque l’application est portée dans différents environnements

testSuite

Utilisé pour définir un test.

Définition du schéma YAML de test

Propriété Obligatoire Description
testSuiteName Oui Nom de la suite de tests
testSuiteDescription Non Les informations supplémentaires décrivent ce que fait la suite de tests
persona Oui Utilisateur connecté pour effectuer le test. Doit correspondre à une personne répertoriée dans la section Utilisateurs
appLogicalName Oui Nom logique de l’application qui doit être lancée. Il peut être obtenu à partir de la solution. Pour les applications canevas, vous devez l’ajouter à une solution pour l’obtenir
appId Non ID de l’application qui doit être lancée. Requis et utilisé uniquement lorsque le nom logique de l’application n’est pas présent. L’ID d’application doit être utilisé uniquement pour les applications canevas qui ne font pas partie de la solution
networkRequestMocks Non Définit les simulations de demande réseau nécessaires pour le test
testCases Oui Définit les cas de test dans la suite de tests. Les cas de test contenus dans les suites de tests sont exécutés de manière séquentielle. L’état de l’application persiste entre chacun des cas de test d’une suite
onTestCaseStart Non Définit les étapes qui doivent être déclenchées pour chaque cas de test d’une suite avant que le cas ne commence à s’exécuter
onTestCaseComplete Non Définit les étapes qui doivent être déclenchées pour chaque cas de test d’une suite à la fin de l’exécution du cas
onTestSuiteComplete Non Définit les étapes qui doivent être déclenchées à la fin de l’exécution de la suite

test NetworkRequestMocks

Propriété Obligatoire Description
requestURL Oui URL de la demande qui obtient une réponse fictive. Les modèles Glob sont acceptés
responseDataFile Oui Fichier texte avec le contenu de la réponse fictive. Tout le texte de ce fichier est lu comme la réponse
method Non Méthode de la demande (GET, POST, etc.)
headers Non Liste de champs d’en-tête dans la demande au format [fieldName : fieldValue]
requestBodyFile Non Fichier texte avec le corps de la demande. Tout le texte de ce fichier est lu comme le corps de la demande

Pour les propriétés facultatives, si aucune valeur n’est spécifiée, le routage s’applique à toutes les propriétés. Par exemple, si method a la valeur null, nous renvoyons la réponse fictive quelle que soit la méthode, tant que toutes les autres propriétés correspondent.

Pour SharePoint/Dataverse/Applications du connecteur, requestURL et method peuvent être identiques pour toutes les demandes. x-ms-request-method et x-ms-request-url dans les en-têtes doivent être configurés dans ce cas pour identifier différentes demandes.

test TestCases

Propriété Requise Description
testCaseName Oui Nom du cas de test, qui est utilisé pour indiquer que l’opération a réussi ou échoué
testCaseDescription Non Les informations supplémentaires décrivent ce que fait le cas de test
testSteps Oui Ensemble de fonctions Power Fx qui décrivent les étapes nécessaires pour réaliser le cas de test

test TestSteps

  • Ce paramètre peut utiliser n’importe quelle Fonction Power Fx de Test Engine existante ou des fonctions de test spécifiques définies par ce framework.
  • Il doit commencer par | pour autoriser les expressions YAML multilignes, suivi d’un signe = pour indiquer qu’il s’agit d’une expression Power Fx
  • Les fonctions doivent être séparées par ;
  • Les commentaires peuvent être utilisés et doivent commencer par //

testSettings

Utilisé pour définir les paramètres des tests dans le plan de test.

Définition du schéma YAML de testSettings

Propriété Obligatoire Description
locale Oui Syntaxe des paramètres régionaux ou de la culture dans laquelle les cas de test ou les étapes de test sont écrits. Voir Support global dans Microsoft Power Fx pour obtenir plus d’informations. Si ce paramètre n’est pas spécifié, CultureInfo.CurrentCulture est utilisé par défaut pour les paramètres régionaux pour analyser les étapes de test.
browserConfigurations Oui Liste de configurations du navigateur à tester. Au moins un navigateur doit être spécifié.
recordVideo Non La valeur par défaut est false. Si elle est définie sur true, un enregistrement vidéo du test est capturé.
headless Non La valeur par défaut est true. Si elle est définie sur false, le navigateur s’affiche lors de l’exécution du test.
timeout Non Valeur de délai d’expiration en millisecondes. La valeur par défaut est 30 000 millisecondes (30 s). Si une opération prend plus de temps que le délai d’expiration, le test se termine par un échec.
filePath Non Chemin d’accès à un fichier yaml distinct avec tous les paramètres de test. Si ce paramètre est fourni, il remplace tous les paramètres de test du plan de test.

Configuration du navigateur de testSettings

Propriété Obligatoire Description
browser Oui Navigateur à lancer lors du test. Doit correspondre aux navigateurs pris en charge par Playwright.
device Non Appareil à émuler lors du lancement du navigateur. Doit correspondre aux appareils pris en charge par Playwright
screenHeight Non Hauteur de l’écran à utiliser lors du lancement du navigateur. Si ce paramètre est spécifié, screenWidth doit également être spécifié.
screenWidth Non Largeur de l’écran à utiliser lors du lancement du navigateur. Si ce paramètre est spécifié, screenHeight doit également être spécifié.

Utilisateurs

Pour garantir que les informations d’identification sont stockées de manière sécurisée, la définition de test réfèrence les utilisateurs en utilisant un nom de personne. Le stockage des informations d’identification dans les fichiers du plan de test n’est pas pris en charge.

Les références aux informations d’identification de l’utilisateur se trouvent sous la section environmentVariables sous la forme d’une liste de users

Exemple :

environmentVariables:
    - users:
        - personaName: "User1"
          emailKey: "user1Email"
          passwordKey: "user1Password"
        - personaName: "User2"
          emailKey: "user2Email"
          passwordKey: "user2Password"

Le paramètre personaName est utilisé dans le cadre de la définition du test pour indiquer sous quel utilisateur exécuter le test.

Mécanismes de stockage des informations d’identification pris en charge

Notes

L’authentification multifacteur n’est pas prise en charge.

Variables d’environnement

Pour stocker les informations d’identification en tant que variables d’environnement, vous pouvez les définir comme suit :

# <a name="in-powershell---replace-variablename-and-variablevalue-with-the-correct-values"></a>In PowerShell - replace variableName and variableValue with the correct values
$env:variableName = "variableValue"

Dans le YAML, deux propriétés doivent être définies pour indiquer que les informations d’identification de cet utilisateur sont stockées dans des variables d’environnement :

  • emailKey : la variable d’environnement utilisée pour stocker l’email de l’utilisateur.
  • passwordKey : la variable d’environnement utilisée pour stocker le mot de passe de l’utilisateur.

Exemple de YAML :

    - personaName: "User1"
      emailKey: "user1Email"
      passwordKey: "user1Password"

Exemple de PowerShell pour définir les informations d’identification de l’utilisateur basées sur YAML :

$env:user1Email = "someone@example.com"
$env:user1Password = "fake password"

Voir aussi

Vue d’ensemble de Power Apps Test Engine (version préliminaire)
Fonctions Power Fx de Power Apps Test Engine (version préliminaire)

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).