Condividi tramite


Automatizzare le app native iOS con Xamarin.UITest

Importante

Visual Studio App Center è pianificato per il ritiro il 31 marzo 2025. Anche se è possibile continuare a usare Visual Studio App Center fino a quando non viene completamente ritirato, esistono diverse alternative consigliate a cui è possibile prendere in considerazione la migrazione.

Altre informazioni sulle sequenze temporali di supporto e sulle alternative.

Per seguire la guida, è necessario accedere al codice sorgente dell'app.

Aggiungere un back-end di automazione all'app

Parte della toolchain Xamarin.UITest è il back-end eseguito insieme all'app. Lo script di test di Xamarin.UITest comunica con il back-end, che esegue i comandi nel simulatore o nel dispositivo.

Poiché Xamarin.UITest condivide il back-end con Calabash, il primo passaggio consiste nel collegare calabash.framework usando uno dei tre metodi del documento Calabash.

Si noterà che il server è in esecuzione in Xcode, dopo aver seguito la guida calabash.

Il file viene .app compilato dal terminale come indicato di seguito:

Nota

.app solo i simulatori di lavoro

 xcrun xcodebuild \
  -project ProjectFile.xcodeproj \
  -configuration ConfiguratonWithCalabashLinked \
  -sdk iphonesimulator \
  ARCHS="x86_64" \
  VALID_ARCHS="x86_64" \
  ONLY_ACTIVE_ARCH=NO \
  -scheme SchemeWithCalabashLinked \
  -derivedDataPath DerivedData \
  build

Le opzioni seguenti devono corrispondere al progetto:

  • -project
  • -configuration
  • -scheme

Eseguire Xamarin.UITest in un simulatore

Con l'installazione del back-end Calabash, il passaggio successivo consiste nel configurare Xamarin.UITest in modo da aprire l'app in un simulatore. Vedere la pagina Uso dei simulatori su come identificare i simulatori.

e .AppBundle().DeviceIdentifier() deve essere configurato. È possibile trovare AppBundle in DerivedData se l'app è stata compilata usando il comando da Aggiungere un back-end di automazione all'app.

Eseguire un test

Avviare i test da Visual Studio per Mac selezionando Unit Test sul lato destro.