Migrazione degli ambienti di test personalizzati ai nuovi host di test iOS - AWS Device Farm

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Migrazione degli ambienti di test personalizzati ai nuovi host di test iOS

Per migrare i test esistenti dall'host legacy al nuovo host di test macOS, dovrai sviluppare nuovi file di specifiche di test basati su quelli preesistenti.

L'approccio consigliato consiste nell'iniziare con il file di test spec di esempio per i tipi di test desiderati, quindi migrare i comandi pertinenti dal vecchio file delle specifiche di test a quello nuovo. Ciò consente di sfruttare le nuove funzionalità e ottimizzazioni delle specifiche di test di esempio per il nuovo host riutilizzando al contempo gli snippet del codice esistente.

Tutorial: migrazione dei file delle specifiche di test iOS con la console

In questo esempio, la console Device Farm verrà utilizzata per integrare le specifiche di test di un dispositivo iOS esistente per utilizzare il nuovo host di test.

Passaggio 1: creazione di nuovi file delle specifiche di test con la console

  1. Accedi alla console AWS Device Farm.

  2. Vai al progetto Device Farm contenente i tuoi test di automazione.

  3. Scarica una copia delle specifiche di test esistenti che desideri utilizzare.

    1. Fai clic sull'opzione «Impostazioni del progetto» e vai alla scheda Caricamenti.

    2. Vai al file delle specifiche di test con cui desideri effettuare l'onboarding.

    3. Fai clic sul pulsante Download per creare una copia locale di questo file.

  4. Torna alla pagina del progetto e fai clic su Crea esegui.

  5. Compila le opzioni della procedura guidata come se dovessi iniziare una nuova esecuzione, ma fermati all'opzione Select test spec.

  6. Utilizzando la specifica di test iOS selezionata per impostazione predefinita, fai clic sul pulsante Crea una specifica di test.

  7. Modifica la specifica del test selezionata per impostazione predefinita nell'editor di testo.

    1. Se non è già presente, modifica il file delle specifiche di test per selezionare il nuovo host utilizzando:

      ios_test_host: macos_sequoia
    2. Dalla copia delle specifiche di test scaricata in un passaggio precedente, esaminale ciascuna. phase

    3. Copia i comandi dalle fasi della vecchia specifica di test in ciascuna rispettiva fase della nuova specifica di test, ignorando i comandi relativi all'installazione o alla selezione di Java, Python, Node.js, Ruby, Appium o Xcode.

  8. Immettete un nuovo nome di file nella casella di testo Salva come.

  9. Fai clic sul pulsante Salva come nuovo per salvare le modifiche.

Per un esempio di file di specifiche di test che puoi usare come riferimento, vedi l'esempio fornito inEsempi di specifiche di test.

Fase 2: Selezione del software preinstallato

Nel nuovo host di test, le versioni software preinstallate vengono selezionate utilizzando un nuovo strumento di gestione delle versioni standardizzato chiamato. devicefarm-cli Questo strumento è ora l'approccio consigliato per l'utilizzo dei vari software che forniamo sugli host di test.

Ad esempio, dovresti aggiungere la riga seguente per utilizzare un JDK 17 diverso nel tuo ambiente di test:

- devicefarm-cli use java 17

Per ulteriori informazioni sul software supportato disponibile, consulta:. Software supportato in ambienti di test personalizzati

Passo 3: Utilizzo di Appium e delle sue dipendenze tramite gli strumenti di selezione del software

Il nuovo host di test supporta solo Appium 2.x e versioni successive. Seleziona esplicitamente la versione di Appium utilizzandodevicefarm-cli, rimuovendo strumenti legacy come. avm Esempio:

# This line using 'avm' should be removed # - avm 2.3.1 # And the following lines should be added - devicefarm-cli use appium 2 # Selects the version - appium --version # Prints the version

La versione Appium selezionata con devicefarm-cli viene preinstallata con una versione compatibile del driver XCUITest per iOS.

Inoltre, dovrai aggiornare le specifiche del test per utilizzare invece di. DEVICEFARM_APPIUM_WDA_DERIVED_DATA_PATH_V9 DEVICEFARM_WDA_DERIVED_DATA_PATH La nuova variabile di ambiente punta a una versione predefinita di WebDriverAgent 9.x, che è l'ultima versione supportata per i test di Appium 2.

Per ulteriori informazioni, consulta e. Selezione di una WebDriverAgent versione per i test iOS Variabili di ambiente per i test di Appium

Differenze tra gli host di test nuovi e quelli precedenti

Quando modifichi il file delle specifiche di test per utilizzare il nuovo host di test iOS e trasferisci i test dall'host di test precedente, tieni presente queste differenze chiave nell'ambiente:

  • Versioni Xcode: nell'ambiente host di test legacy, la versione Xcode disponibile era basata sulla versione iOS del dispositivo utilizzato per i test. Ad esempio, i test su dispositivi iOS 18 hanno utilizzato Xcode 16 nell'host legacy, mentre i test su iOS 17 hanno utilizzato Xcode 15. Nel nuovo ambiente host, tutti i dispositivi possono accedere alle stesse versioni di Xcode, garantendo un ambiente coerente per i test su dispositivi con versioni diverse. Per un elenco delle versioni di Xcode attualmente disponibili, consulta. Software supportato

  • Selezione delle versioni del software: in molti casi, le versioni software predefinite sono cambiate, quindi se prima non selezionavi esplicitamente la versione del software nell'host di test precedente, potresti volerla specificare ora nel nuovo host di test che utilizza. devicefarm-cli Nella maggior parte dei casi d'uso, consigliamo ai clienti di selezionare esplicitamente le versioni del software che utilizzano. Selezionando una versione del software con, devicefarm-cli avrai un'esperienza prevedibile e coerente e riceverai un'ampia quantità di avvisi se Device Farm prevede di rimuovere quella versione dall'host di test.

    Inoltre, strumenti di selezione del software come nvm pyenv avm, e rvm sono stati rimossi a favore del nuovo devicefarm-cli sistema di selezione del software.

  • Versioni software disponibili: molte versioni del software preinstallato in precedenza sono state rimosse e sono state aggiunte molte nuove versioni. Pertanto, assicurati che quando utilizzi devicefarm-cli per selezionare le versioni del software, selezioni le versioni presenti nell'elenco delle versioni supportate.

  • La libimobiledevice suite di strumenti è stata rimossa a favore di strumenti più nuovi/di prima parte per tenere traccia degli attuali test dei dispositivi iOS e degli standard di settore. Per iOS 17 e versioni successive, puoi migrare la maggior parte dei comandi per utilizzare strumenti Xcode simili, chiamati. devicectl Per informazioni in meritodevicectl, puoi eseguirlo xcrun devicectl help da una macchina su cui è installato Xcode.

  • I percorsi di file codificati nel file delle specifiche di test dell'host precedente come percorsi assoluti molto probabilmente non funzioneranno come previsto nel nuovo host di test e generalmente non sono consigliati per l'uso di file di specifiche di test. Ti consigliamo di utilizzare percorsi relativi e variabili di ambiente per tutto il codice del file delle specifiche di test. Per ulteriori informazioni, consulta l'argomento suLe migliori pratiche per l'esecuzione di ambienti di test personalizzati.

  • Versione e architettura del sistema operativo: gli host di test precedenti utilizzavano una varietà di versioni macOS e architetture CPU in base al dispositivo assegnato. Di conseguenza, gli utenti potrebbero notare alcune differenze nelle librerie di sistema disponibili nell'ambiente. Per ulteriori informazioni sulla versione precedente del sistema operativo host, consultaHost di test iOS legacy.

  • Per gli utenti di Appium, il modo di selezionare WebDriverAgent è stato modificato in un prefisso per le variabili di ambiente utilizzate DEVICEFARM_APPIUM_WDA_DERIVED_DATA_PATH_V anziché il vecchio prefisso. DEVICEFARM_WDA_DERIVED_DATA_PATH_V Per ulteriori informazioni sulla variabile aggiornata, consulta. Variabili di ambiente per i test di Appium

  • Per gli utenti di Appium Java, il nuovo host di test non contiene alcun file JAR preinstallato nel percorso di classe, mentre l'host precedente ne conteneva uno per il framework TestNG (tramite una variabile di ambiente). $DEVICEFARM_TESTNG_JAR Consigliamo ai clienti di impacchettare i file JAR necessari per i propri framework di test all'interno del pacchetto di test e di rimuovere le istanze della variabile dai file delle $DEVICEFARM_TESTNG_JAR specifiche di test.

Ti consigliamo di contattare il team di assistenza tramite un caso di supporto se hai commenti o domande sulle differenze tra gli host di test dal punto di vista del software.