Partager via


Modifications simultanées de la base de données de test

Important

Visual Studio App Center est prévu pour la mise hors service le 31 mars 2025. Bien que vous puissiez continuer à utiliser Visual Studio App Center jusqu’à ce qu’il soit entièrement mis hors service, il existe plusieurs alternatives recommandées que vous pouvez envisager de migrer vers.

En savoir plus sur les chronologies de support et les alternatives.

Les scripts de test modifient souvent les données externes et testent les modifications. Le processus inclut généralement la définition des données à l’état connu ou initial sur lequel les tests ont été écrits. Ce processus peut utiliser une base de données de test avec des informations d’identification pour l’utilisateur de test.

Ce scénario courant fonctionne bien pour un seul test sur un seul appareil à la fois. Si vous testez sur plusieurs appareils en même temps, les tests peuvent entraîner des modifications en conflit dans la base de données de test.

Pour éviter les modifications de base de données en conflit, vous pouvez utiliser les approches suivantes, dans l’ordre d’augmentation de la complexité et de la puissance :

  1. Exécutez un seul test à la fois.

  2. Ne modifiez pas les données courantes ou ne vous fiez pas aux données que vos tests peuvent changer.

  3. Fictivez les données dans vos tests.

  4. Créez plusieurs utilisateurs de test avec des informations d’identification uniques, de sorte que les appareils simultanés se connectent en tant qu’utilisateurs différents. Utilisez un index d’appareil pour obtenir un identificateur unique pour chaque appareil au sein d’une exécution de test et utilisez l’identificateur pour rechercher les informations d’identification de l’utilisateur. Cette approche fonctionne uniquement pour plusieurs appareils au sein de la même exécution de test, et non pour plusieurs exécutions de test simultanées.

    Les scripts de test App Center dans Calabash, Appium et Xamarin.UITest peuvent accéder à la variable d’environnement.XTC_DEVICE_INDEX La variable est une chaîne avec une plage 0 à N-1, où N est le nombre d’appareils sur lesquels le test s’exécute. Vous pouvez utiliser cette variable pour rechercher des informations d’identification lorsque vous exécutez un test en parallèle sur plusieurs appareils. La variable est disponible uniquement pour le script de test, et non pour l’application en cours de test.

  5. Créez un service web externe auquel les tests peuvent accéder au moment de l’exécution pour obtenir un ensemble unique d’informations d’identification. Cette solution est la plus complexe, mais aussi la plus générale.