Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Migration de vos environnements de test personnalisés vers les nouveaux hôtes de test iOS
Pour obtenir la liste complète des hôtes de test disponibles et savoir comment en sélectionner un, consultezHôtes pour environnements de test personnalisés.
Pour migrer les tests existants de l'ancien hôte vers le nouvel hôte de test macOS, vous devez développer de nouveaux fichiers de spécifications de test en fonction de vos fichiers préexistants.
L'approche recommandée consiste à commencer par l'exemple de fichier de spécifications de test pour les types de test souhaités, puis à migrer les commandes pertinentes de votre ancien fichier de spécifications de test vers le nouveau. Cela vous permet de tirer parti des nouvelles fonctionnalités et des optimisations de l'exemple de spécification de test pour le nouvel hôte tout en réutilisant des extraits de code existant.
Rubriques
Tutoriel : Migration des fichiers de spécifications de test iOS avec la console
Dans cet exemple, la console Device Farm sera utilisée pour intégrer une spécification de test d'appareil iOS existante afin d'utiliser le nouvel hôte de test.
Étape 1 : Création de nouveaux fichiers de spécifications de test avec la console
-
Décidez quel hôte de test vous souhaitez utiliser. Pour obtenir la liste des hôtes de test iOS disponibles et savoir comment en sélectionner un, consultezHôtes pour environnements de test personnalisés.
-
Connectez-vous à la console AWS Device Farm
. -
Accédez au projet Device Farm contenant vos tests d'automatisation.
-
Téléchargez une copie de la spécification de test existante avec laquelle vous souhaitez intégrer.
-
Cliquez sur l'option « Paramètres du projet » et accédez à l'onglet Téléchargements.
-
Accédez au fichier de spécifications de test que vous souhaitez intégrer.
-
Cliquez sur le bouton Télécharger pour créer une copie locale de ce fichier.
-
-
Retournez à la page Projet et cliquez sur Créer une exécution.
-
Renseignez les options de l'assistant comme si vous deviez démarrer une nouvelle exécution, mais arrêtez-vous sur l'option Sélectionner la spécification du test.
-
À l'aide de la spécification de test iOS sélectionnée par défaut, cliquez sur le bouton Créer une spécification de test.
-
Modifiez la spécification de test sélectionnée par défaut dans l'éditeur de texte.
-
Choisissez
ios_test_hostl'hôte de test qui correspond à vos exigences de test. Par exemple :ios_test_host: macos_tahoe -
À partir de la copie de votre spécification de test téléchargée à l'étape précédente, passez en revue chacune d'entre elles
phase. -
Copiez les commandes des phases de l'ancienne spécification de test dans chaque phase respective de la nouvelle spécification de test, en ignorant les commandes liées à l'installation ou à la sélection de Java, Python Node.js, Ruby, Appium ou Xcode.
-
-
Entrez un nouveau nom de fichier dans la zone de texte Enregistrer sous.
-
Cliquez sur le bouton Enregistrer en tant que nouveau pour enregistrer vos modifications.
Pour un exemple de fichier de spécifications de test que vous pouvez utiliser comme référence, consultez l'exemple fourni dansExemples de spécifications de test.
Étape 2 : Sélection des logiciels préinstallés
Dans le nouvel hôte de test, les versions logicielles préinstallées sont sélectionnées à l'aide d'un nouvel outil de gestion des versions standardisé appelédevicefarm-cli. Cet outillage est désormais l'approche recommandée pour utiliser les différents logiciels que nous fournissons sur les hôtes de test.
Par exemple, ajoutez la ligne suivante pour utiliser le JDK 25 dans votre environnement de test :
- devicefarm-cli use java 25
Pour plus d'informations sur les logiciels pris en charge disponibles, veuillez consulter :Logiciels pris en charge dans des environnements de test personnalisés.
Étape 3 : Utilisation d'Appium et de ses dépendances via l'outil de sélection de logiciels
Sélectionnez explicitement la version d'Appium à l'aide du. devicefarm-cli Sur l'hôte macos_tahoe de test, Appium 3 est la version par défaut :
- devicefarm-cli use appium 3 # Selects the version - appium --version # Prints the version
La version d'Appium sélectionnée devicefarm-cli est préinstallée avec une version compatible du pilote XCUItest pour iOS.
Lorsque vous utilisez la spécification de test par défaut, Device Farm sélectionne automatiquement WebDriverAgent (WDA) en fonction du pilote XCUItest installé. Pour plus d'informations sur le fonctionnement de cette sélection, consultez Sélection d'une WebDriverAgent version pour les tests iOS etVariables d'environnement pour les tests Appium.
Différences entre les nouveaux et les anciens hôtes de test
Lorsque vous modifiez votre fichier de spécifications de test pour utiliser le nouvel hôte de test iOS et que vous effectuez la transition de vos tests depuis l'ancien hôte de test, tenez compte des principales différences d'environnement suivantes :
-
Versions Xcode : dans l'ancien environnement hôte de test, la version Xcode disponible était basée sur la version iOS de l'appareil utilisé pour les tests. Par exemple, les tests sur les appareils iOS 18 utilisaient Xcode 16 dans l'ancien hôte, tandis que les tests sur iOS 17 utilisaient Xcode 15. Dans le nouvel environnement hôte, tous les appareils peuvent accéder aux mêmes versions de Xcode, ce qui permet de disposer d'un environnement cohérent pour les tests sur des appareils dotés de différentes versions. Pour obtenir la liste des versions de Xcode actuellement disponibles, consultezLogiciels pris en charge.
-
Sélection des versions logicielles : dans de nombreux cas, les versions logicielles par défaut ont changé. Par conséquent, si vous ne sélectionniez pas explicitement votre version logicielle dans l'ancien hôte de test auparavant, vous souhaiterez peut-être la spécifier maintenant dans le nouvel hôte de test en utilisant devicefarm-cli. Dans la grande majorité des cas d'utilisation, nous recommandons aux clients de sélectionner explicitement les versions des logiciels qu'ils utilisent. En sélectionnant une version logicielle avec,
devicefarm-clivous bénéficierez d'une expérience prévisible et cohérente et recevrez de nombreux avertissements si Device Farm prévoit de supprimer cette version de l'hôte de test.De plus, les outils de sélection de logiciels tels que
nvmpyenvavm,, etrvmont été supprimés au profit du nouveau système de sélection dedevicefarm-clilogiciels. -
Versions logicielles disponibles : de nombreuses versions de logiciels précédemment préinstallés ont été supprimées et de nombreuses nouvelles versions ont été ajoutées. Assurez-vous donc que lorsque vous utilisez le
devicefarm-clipour sélectionner les versions de votre logiciel, vous sélectionnez les versions qui figurent dans la liste des versions prises en charge. -
La
libimobiledevicesuite d'outils a été supprimée au profit d'outils plus récents et propriétaires permettant de suivre les tests actuels des appareils iOS et les normes de l'industrie. Pour iOS 17 et versions ultérieures, vous pouvez migrer la plupart des commandes pour utiliser des outils Xcode similaires, appelés.devicectlPour plus d'informationsdevicectl, vous pouvez exécuterxcrun devicectl helpà partir d'une machine sur laquelle Xcode est installé. -
Les chemins de fichiers codés en dur dans votre ancien fichier de spécifications de test d'hôte en tant que chemins absolus ne fonctionneront probablement pas comme prévu dans le nouvel hôte de test, et ils ne sont généralement pas recommandés pour l'utilisation de fichiers de spécifications de test. Nous vous recommandons d'utiliser des chemins relatifs et des variables d'environnement pour tout le code du fichier de spécifications de test. Pour plus d'informations, consultez la rubrique surBonnes pratiques pour l'exécution d'un environnement de test personnalisé.
-
Version et architecture du système d'exploitation : les anciens hôtes de test utilisaient diverses versions de macOS et architectures de processeurs en fonction de l'appareil attribué. Par conséquent, les utilisateurs peuvent remarquer certaines différences dans les bibliothèques système disponibles dans l'environnement. Pour plus d'informations sur la version précédente du système d'exploitation hôte, consultezHôte de test iOS Legacy.
-
Pour les utilisateurs d'Appium, la méthode de sélection WebDriverAgent a été modifiée pour utiliser le préfixe de la variable d'environnement
DEVICEFARM_APPIUM_WDA_DERIVED_DATA_PATH_Vau lieu de l'ancien préfixe.DEVICEFARM_WDA_DERIVED_DATA_PATH_VPour plus d'informations sur la variable mise à jour, consultezVariables d'environnement pour les tests Appium. -
Pour les utilisateurs d'Appium Java, le nouvel hôte de test ne contient aucun fichier JAR préinstallé dans son chemin de classe, alors que l'hôte précédent en contenait un pour le framework TestNG (via une variable d'environnement).
$DEVICEFARM_TESTNG_JARNous recommandons aux clients de regrouper les fichiers JAR nécessaires à leurs frameworks de test dans leur package de test et de supprimer les instances de la$DEVICEFARM_TESTNG_JARvariable de leurs fichiers de spécifications de test.
Nous vous recommandons de contacter l'équipe de service via un dossier d'assistance si vous avez des commentaires ou des questions concernant les différences entre les hôtes de test du point de vue logiciel.