Accélérez votre transformation numérique avec Everense

Comment les tests basés sur des modèles (MBT) peuvent-ils contribuer à l’internationalisation de votre produit ?

Comment les tests basés sur des modèles (MBT) peuvent-ils contribuer à l’internationalisation de votre produit ?

Nous vivons aujourd’hui dans un monde où nous pouvons rapidement établir un appel depuis notre ordinateur vers des personnes vivant à l’autre bout du monde. Nos applications peuvent être utilisées partout, même dans des endroits dont nous n’avons jamais entendu parler ! Avec le 21e siècle, nous sommes entrés dans une ère de grands défis autour de l’internationalisation des produits. Comment les tests peuvent-ils gérer autant de langues, étant donné que la prise en charge d’une nouvelle langue peut être obligatoire très rapidement ?

Si vous n’utilisez pas de tests basés sur des modèles, vous devriez vraiment vous pencher sur cette technologie. Vous pouvez modéliser votre fonctionnalité à tester à un niveau d’abstraction supérieur à celui de votre application testée, et laisser un moteur générer automatiquement vos cas de test pour vous. Si vous utilisez déjà les tests basés sur des modèles, vous vous posez peut-être des questions : « Comment un modèle peut-il refléter l’internationalisation de mon produit ? » Il y a plus d’une solution à ce problème, je partage ici l’une des solutions que je pense être la plus facile.

La beauté des tests basés sur des modèles est qu’avec un modèle de haut niveau, la génération de tests automatisés peut être réalisée facilement, et nous pouvons utiliser cela pour faire face à notre défi multilingue. Lorsque je modélise mon application, j’exprime la fonctionnalité à un niveau d’abstraction plus élevé en utilisant un concept de « placeholder ».. Je veux dire par là que je ne vérifie pas des chaînes de caractères spécifiques dans mon modèle, mais que je décris par exemple : « Trouver dans ma page de connexion, les noms des champs de formulaire équivalents à « login » et « password » ; dans n’importe quelle langue cible ». Je ne vérifie pas le texte spécifique « login » et « password » parce qu’il n’est correct qu’en anglais. Je me contente delaisser le problème de la langue à l’automatisation.

Ainsi, laissant ce défi à l’automatisation de l’exécution des tests, lorsque je génère des cas de test pour cet exemple, je suis un schéma comme celui-ci : Dans ma page de connexion, je dois vérifier un formulaire avec l’équivalent de « login » et « password ». Je peux maintenant exécuter ce test une fois en remplaçant les caractères génériques (par exemple, sur la base d’un mappage décrit dans une feuille de calcul Excel avec les équivalents anglais) et générer la version anglaise « find in my login page a form fields named « login » and « password » ». Lorsque j’ajoute une autre colonne pour le français, mon outil d’exécution des tests génère un scénario de test avec la même logique, mais en vérifiant dans ma page de connexion un formulaire pour le « nom d’utilisateur » et le « mot de passe ». Ici, je laisse le cadre d’exécution des tests s’occuper de la langue spécifique, et mon modèle est générique !

Or, certaines applications telles que les décodeurs TV, les applications web, etc. ont des menus ou des parties de menus qui ne sont présents qu’avec un pays ou un paramètre linguistique spécifique, mais pas avec d’autres. Nous pouvons utiliser des techniques bien connues dans les tests basés sur des modèles : sur la base de la sélection antérieure de la langue au début de notre flux, nous bloquons certaines branches du flux et empêchons ainsi les tests d’être générés pour ces paramètres. Il est utile et intéressant de connaître la couverture exacte de chaque langue que vous avez obtenue.

En conclusion, l’abstraction des données est la clé de l’internationalisation de votre produit. À long terme, et pour des raisons d’évolutivité, il est préférable de maintenir un modèle générique avec une prise de décision basée sur la langue sélectionnée, plutôt qu’un modèle par langue. Il en ressort que le modèle n’est pas nécessairement le seul endroit où vous devez penser à l’automatisation – l’ imbrication de la génération automatique de tests et de l’exécution automatique de tests peut également contribuer à accroître l’automatisation du processus de test. Utilisez donc cette astuce dans votre modélisation et résolvez votre problème d’internationalisation de manière simple et évolutive.

Merci de votre lecture ! Veuillez commenter!

Lire la suite sur : https://www.conformiq.com/category/blogs/

Si vous avez un sujet spécifique, n‘hésitez pas à me le faire savoir !

Partager sur LinkedIn

Vous pourriez être intéréssé(e)

Faites équipe avec Everense pour une transformation numérique réussie

Choisir Everense signifie collaborer avec des experts forts de plus de 7 ans d’expérience, déterminés à vous guider efficacement dans votre transformation numérique.

Vous avez un projet ? Nous serons ravis de vous accompagner !