2012-10-11 13 views
24

Sto utilizzando UIAutomation fornito da Apple -> Xcode -> strumenti. Ho i miei Javascripts e l'intera automazione utilizzando l'infrastruttura della riga di comando degli strumenti in esecuzione.Avviare una versione hardware specifica del simulatore iOS utilizzando l'utilità della riga di comando dello strumento

Ho ottenuto un ulteriore compito di eseguire l'automazione su versioni precedenti del simulatore (iOS 6.0, 5.1, 5.0, 4.3.2) per fornire una copertura migliore.

Ma non conosco un modo per specificare quale versione del simulatore iOS scegliere. per impostazione predefinita sceglie sempre il simulatore iOS lates.

ho provato le seguenti cose:

  1. Specifica il percorso in cui il simulatore è conservato, che include il percorso versione di simulatore.
  2. Creazione di una traccia modello di automazione personalizzata e tentativo di utilizzarla.
  3. Modificata la versione predefinita del simulatore iOS utilizzando l'utility di default com.apple.simulator.
+0

Quale versione di Xcode stai usando? Nota che Xcode 4.5 supporta solo simulatori iOS5 e superiori. – Till

+0

sì sto usando 4.5, e sono in grado di eseguire i miei script (scegliendo diverse versioni di simulatori) attraverso l'interfaccia utente degli strumenti. Non riesco ad ottenere lo stesso usando l'interfaccia a riga di comando – user1737520

+0

Hai provato qualcosa del genere? /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate/Users/user/Library/Application \ Support/iPhone \ Simulator/SIMULATOR VERSION QUI /Applications/016SA6CB-W70F-4368-BF48-A0E65466F7EE/yourappname.app – stackErr

risposta

0

Hai provato iOS-Sim https://github.com/phonegap/ios-sim? Questo ti dà alcune opzioni extra quando lavori con il simulatore da cmd. La versione è uno di questi.

+1

Non credo che ios-sim possa essere d'aiuto perché non importa quale versione del sistema operativo il simulatore è in esecuzione prima di dare il via allo strumento di automazione sembra cambiare l'ultima (attualmente 6.1) – atroutt

2

con strumenti 5.0 (si riferiscono a Xcode 5.0):

  1. fare clic sull'icona piccola "i" a destra di "Automazione" nella parte superiore sinistra della finestra
  2. sotto "Target" , fare clic sul nome della vostra applicazione
  3. nel menu a comparsa, selezionare "Modifica di destinazione attiva" nella finestra pop-up ,
  4. fare clic sul menu "Opzioni", e sotto "Simulator configu razione "selezionare il dispositivo da simulare e la versione iOS.

Se non vedi una particolare versione di iOS, allora avete bisogno di aggiungere che il simulatore in Xcode:

  1. menu di Xcode, Preferenze ...
  2. scheda
  3. Download
  4. Fare clic sul freccia verso il basso successiva alla versione del simulatore iOS che si desidera installare

PS: ho creato alcuni screenshot fantastici, ma stackoverflow non mi permette di pubblicarli. boo.

+0

alla ricerca di un modo da fare da linea di comando Questo. Ho provato a salvare un modello di strumenti in questo modo, ma ha comunque avviato l'ultima versione dalla riga di comando. –

0

Se è possibile selezionarlo nell'interfaccia utente, si dovrebbe essere in grado di ottenere lo stesso risultato utilizzando il meleScript. Questo è un esempio di come cambiare il dispositivo su applescript: https://gist.github.com/Reflejo/9537281

0

provato qualcosa di simile?

xcrun instruments -v -t /Applications/Xcode.app/Contents/Applications/Instruments.app/Contents/PlugIns/AutomationInstrument.bundle/Contents/Resources/Automation.tracetemplate ~/Library/Application\ Support/iPhone\ Simulator/6.1/Applications/00C7521A-92D9-4627-BB1D-2CD7CA605B9B/Mobile\ EMR.app -e UIASCRIPT /Volumes/Data/SoftServe/Projects/mEMR/imHealth/Testing/testUI.js -e UIARESULTSPATH /Volumes/Data/SoftServe/Projects/mEMR/imHealth/Testing/results.txt 
5

Poiché Xcode 5.1 Instruments supporta il tipo di hardware del simulatore e la versione di iOS dalla riga di comando.

instruments -w help 

Il comando precedente ti fornirà un elenco delle combinazioni hardvare-iOS disponibili. Sulla mia macchina questo è sono:

iPhone - Simulator - iOS 6.1 
iPhone - Simulator - iOS 7.1 
iPhone Retina (3.5-inch) - Simulator - iOS 6.1 
iPhone Retina (3.5-inch) - Simulator - iOS 7.1 
iPhone Retina (4-inch) - Simulator - iOS 6.1 
iPhone Retina (4-inch) - Simulator - iOS 7.1 
iPhone Retina (4-inch 64-bit) - Simulator - iOS 6.1 
iPhone Retina (4-inch 64-bit) - Simulator - iOS 7.1 
iPad - Simulator - iOS 6.1 
iPad - Simulator - iOS 7.1 
iPad Retina - Simulator - iOS 6.1 
iPad Retina - Simulator - iOS 7.1 
iPad Retina (64-bit) - Simulator - iOS 6.1 
iPad Retina (64-bit) - Simulator - iOS 7.1 

È possibile specificare l'hardware e la versione iOS anche con bandiera -w. Esempio:

instruments -w "iPad Retina - Simulator - iOS 7.1" -t ... 

Nota quella bandiera -w deve venire all'inizio della riga di comando, prima di qualsiasi altre bandiere, altrimenti si ottiene strani errori.

Ho trovato queste informazioni: http://cocoamanifest.net/articles/2014/03/ui-screen-shooter-now-simpler-and-more-robust-since-xcode-5-1.html