Accueil Blog Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Puisque nous exigeons maintenant que les principaux cas d'utilisation de vos applications soient testés à l'aide du SDK de test pour la certification 2022R1, cet article vous guidera pas à pas dans la configuration et l'exécution de vos premiers tests à partir de zéro.
Aaron Beehoo | 5 janvier 2022

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Introduction

Nous aimerions que vous sachiez que nous exigeons désormais que les principaux cas d'utilisation de vos applications soient testés à l'aide du SDK de test pour la certification 2022R1. Cet article vous fournira ce dont vous avez besoin pour configurer et exécuter vos premiers tests en partant de zéro.

Nous verrons comment créer le projet de test, générer les wrappers d'écran, créer les fichiers d'extension pour accéder à ces wrappers, ainsi que comment écrire les tests eux-mêmes.

Il ne vous reste plus qu'à commencer à écrire de vrais tests !

Création du premier projet de test

Tout d'abord, vous devez télécharger tous les fichiers nécessaires :

    1. Fichiers de code d'exemple complets : https://github.com/AaronBeehoo/
    2. Téléchargez et installez la version d'Acumatica que vous testez sur https://builds.acumatica.com/.
    3. Téléchargez et extrayez la version correspondante de Test SDK dans C:\Acumatica2021R2\TestSDK : http://acumatica-builds.s3.amazonaws.com/index.html?prefix=builds/21.2/21.201.0086/TestSDK/
    4. Télécharger .NET v4.8 : https://dotnet.microsoft.com/en-us/download/dotnet-framework/net48

Vous êtes maintenant prêt à ouvrir Visual Studio et à créer un nouveau projet, en utilisant le modèle C# Console App (.NET Core) :

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Une fois le projet créé, cliquez avec le bouton droit de la souris sur le projet et "Manage Nuget Packages", puis cliquez sur l'icône des paramètres.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Ensuite, vous devez créer un nouveau package source. Entrez un nom et incluez le numéro de build d'Acumatica et utilisez le dossier testSDK/packages que nous avons extrait plus tôt de C:\Acumatica2021R2\TestSDK.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Assurez-vous que la source du paquet nouvellement créée est sélectionnée comme indiqué ci-dessous.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Installer toutes les références à partir de la source du paquet ajouté.

Veuillez noter que votre fichier .csproj devrait ressembler à ce que nous vous montrons ci-dessous. Cependant, il se peut que vous deviez taper manuellement net4.8 pour cibler le bon framework.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Génération d'habillages d'écran

L'étape suivante consiste à créer un nouveau dossier nommé Wrappers dans le projet et à générer les wrappers nécessaires à vos tests en suivant les instructions suivantes. Vous devez générer les wrappers pour chaque que vous utilisez pour vos tests, les écrans personnalisés et les écrans Acumatica.

Allez ensuite dans le dossier C:\Acumatica2021R2\TestSDK_21_205\ClassGenerator et modifiez le fichier exe.config en vous assurant que vous incluez tous les écrans que vous devez utiliser pendant votre test dans l'attribut FilenameFilter. Vous devrez également remplir les autres attributs avec les informations correctes de vos sites.

Ensuite, faites un shift+clic droit sur le dossier ClassGenerator et choisissez Open with PowerShell comme indiqué ci-dessous.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Dans PowerShell, exécutez la commande suivante pour générer les wrappers .\ClassGenerator.exe" Les wrappers seront générés dans le dossier spécifié que vous avez déclaré dans le fichier de configuration.

Note : L'invite de commande generate wrappers prendra 2-3 minutes pour montrer la progression, ne vous inquiétez pas, elle n'est pas figée, attendez simplement que le premier wrapper d'écran soit généré, puis ils commenceront à se succéder rapidement.

Copiez ensuite ces dossiers avec les wrappers à l'intérieur dans le dossier Wrappers de votre solution et félicitations, vous avez les wrappers générés pour les écrans Acumatica et Custom par défaut !

Créons maintenant des extensions pour les rendre accessibles !

Création d'extensions pour les écrans personnalisés

Nous créons les extensions pour les Wrappers afin qu'ils deviennent accessibles au sein de votre solution.

Pour ce faire, il suffit de créer un dossier nommé " Extensions" dans le projet de test, puis de créer un fichier cs pour chaque écran, formulaire et action utilisé dans votre code.

Vous pouvez également voir des exemples sans explication dans les pages 10 à 12 du fichier ReadMe dans le dossier de téléchargement Test SDK.

Créez maintenant un fichier .cs dans le dossier extensions comme suit.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Cliquez avec le bouton droit de la souris et inspectez l'élément sur le formulaire/bouton/champ que vous souhaitez utiliser dans votre test. Copiez le texte de l'étiquette d'un champ unique ou facilement identifiable auquel vous souhaitez accéder, puis prenez le nom de ce champ et recherchez dans le fichier wrapper généré le champ élément id ou le nom de l'étiquette du champ.
Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Rechercher le nom de l'élément de formulaire dans le fichier wrapper généré.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Recherchez ensuite la première utilisation du nom de la classe. Copiez la classe et du nom de la classe dans le wrapper.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Collez les deux valeurs du fichier d'extension dans le format indiqué ci-dessous pour le rendre accessible dans votre test. Nom. Il est approprié de l'utiliser dans vos cas de test. Dans ce cas particulier, CreateContactPopupForm.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Vous devez maintenant créer un test Test.cs de base, comme indiqué ci-dessus. Vous pouvez créer des tests plus complexes en suivant les extraits de code des pages 15 à 19 du SDKReadme.pdf qui se trouve dans le fichier .zip de téléchargement de TestSDK.

Veuillez noter que l'exemple de code de test fourni dans le fichier readme ne fonctionne que sur une copie vierge d'Acumatica. Nous recommandons toujours d'utiliser les données de SalesDemo comme jeu de données de base car elles contiennent des articles, des comptes, des clients, des contacts, etc. préconfigurés.

Ensuite, configurez le fichier config.xml à partir de C:\Acumatica2021R2\TestSDK en le modifiant selon les besoins de votre site et ajoutez ce qui suit aux propriétés (clic droit sur le nom de la solution -> Propriétés) du projet de test afin que vous puissiez simplement cliquer sur run(f5) dans visual studio pour lancer le test.cs.

.\NTests.exe /config "C:\NAcumatica2021R2\NTestSDK\config.xml

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Après avoir défini les arguments config.xml et debug application, exécutez le projet. Le site Acumatica s'affichera et exécutera les étapes en montrant l'interface utilisateur au fur et à mesure de l'exécution. Examinez ensuite les fichiers de sortie dans l'emplacement du dossier de journalisation que vous avez défini dans les fichiers de configuration.

Créer des tests Acumatica Test SDK à partir de zéro pour les ISVs

Erreurs courantes

  • Le site Acumatica n'est plus accessible après avoir généré des wrappers/exécuté des tests: Un problème s'est produit avec le fichier web.config du site Acumatica. Sauvegardez-le pour pouvoir copier l'original dans le dossier, ou installez un nouveau site et régénérez les wrappers.
  • Le test s'est terminé avec le code d'erreur 0 : Le test s'est déroulé avec succès.
  • Le test s'est terminé avec le code d'erreur 1 : Fichier invalide/manquant, probablement un dossier incorrect dans les fichiers de configuration, ou un wrapper/extension manquant.

Résumé

Dans cet article, nous avons fourni tout ce dont vous avez besoin en tant que développeurs pour mettre en place vos premiers cas de tests automatisés Test SDK afin de permettre une simulation parfaite des cas d'utilisation de leur solution. Les tests du Test SDK pourront s'exécuter sur chaque version mineure et majeure d'Acumatica afin d'assurer la compatibilité avec chaque mise à jour et, en cas d'échec, ils vous indiqueront exactement où l'échec s'est produit dans les logs.

Pour des informations plus détaillées sur l'écriture de tests, vous pouvez trouver presque tous les exemples nécessaires dans le Readme.pdf du SDK de test. En outre, si vous avez des questions qui ne sont pas couvertes par le Readme, ou si vous rencontrez des erreurs inattendues, vous pouvez soumettre un ticket d'assistance au développeur pour obtenir de l'aide.

Joyeux test !

Auteur du blog

Recevez les mises à jour du blog dans votre boîte de réception.