iOS Simulator non viene lanciato con Calabash
-
21-12-2019 - |
Domanda
Ho installato Calabash come Pod nel mio progetto.La Gem stessa è installata usando Bundler.Quando provo a eseguire il cetriolo per il mio obiettivo di Calabash, inizia le prime caratteristiche ma semplicemente si blocca e il simulatore non si avvia mai:
$ bundle exec cucumber
Feature: Ensure Login and Oauth Screen Functionality
Scenario: Verify Welcome Page # features/Sign_in.feature:3
.
Maggiori dettagli dalla mia installazione:
# xcode installation location
$ xcode-select --print-path
/Applications/Xcode.app/Contents/Developer
# xcode version
$ xcodebuild -version
Xcode 5.1.1
Build version 5B1008
# calabash version
$ bundle exec calabash-ios version
0.9.168
# calabash < 0.9.169 or Xamarin IDE users
# start your app manually in the simulator or from Xcode and then launch a console
$ bundle exec calabash-ios console
> server_version
{
"outcome" => "SUCCESS",
"app_id" => "[REDACTED]",
"simulator_device" => "iPhone",
"version" => "0.9.168",
"app_name" => "[REDACTED]",
"iphone_app_emulated_on_ipad" => false,
"4inch" => true,
"git" => {
"remote_origin" => "git@github.com:jmoody/calabash-ios-server.git",
"branch" => "master",
"revision" => "adde106"
},
"app_version" => "2.0.1",
"iOS_version" => "7.1",
"system" => "x86_64",
"simulator" => "iPhone Simulator 463.9.41, iPhone OS 7.1 (iPhone Retina (4-inch)/11D167)"
}
. Soluzione
OK, significa che Calabash non può individuare la tua app.
Prova questo primo,
- .
- Commenta la definizione App_bundle_path
YourProject / Caratteristiche / Supporto / 01_Launch.rb come
#APP_BUNDLE_PATH = "~/..../../myApp-cal.app"
in modo che il gemma di Calabash possa localizzare l'app automaticamente. - Apri una console Vai alla cartella del progetto da esso. Quindi inserisci
gem install calabash-cucumber
, questo installerà il gemma di Calabash è OK per eseguire di nuovo anche se lo hai installato in precedenza non ci sono danni. Quindi inseriscicalabash-ios setup
In quel terminale, questo creerà un obiettivo di Calabash e aggiungerà il quadro di Calabash al tuo progetto IOS. Maggiori dettagli sul processo di configurazione è menzionato in qui . - Ora apri il file del progetto in Editor Xcode (puoi vedere la Calabash.Framework aggiunta al gruppo Framework del tuo progetto correttamente.) Selezionare il bersaglio Taipp-Cal e il simulatore che si desidera pulire, costruire ed eseguire il bersaglio Taipp-Cal il tuo simulatore.
- Quindi interrompere e tornare a quella console inserire la console
calabash-ios console
avvia una console Ruby che è possibile lavorare con l'app. Ora (mentre il simulatore è sullo schermo, ma la tua app è backbround su quel simulatore) Digitastart_test_server_in_background
La tua app deve venire in primo piano. Se funziona, il Calabash puoi trovare ed eseguire la tua app sul simulatore. - Ricorda solo se crei una build app su una cartella separata utilizzando un comando o uno script XCodeBuild o qualcosa, questo è il momento per impostare la variabile App_bundle_path.
Altri suggerimenti
La risposta di Chathura ha funzionato per uno dei miei colleghi, ma un paio di noi ha dovuto trovare un'altra soluzione.
Il problema per noi si è verificato dopo aver introdotto i cacapodi.In Xcode, ho aperto organizzatore e ho notato che avevamo una cartella dati derivata per il progetto BP (PRIMA PODS) e un altro per lo spazio di lavoro con i pod.Ho cancellato la cartella dati derivata per il progetto BP e poi tutto ha funzionato.
Avevo riscrittura di Calabash prima di farlo, quindi la soluzione nel mio caso potrebbe essere stata una combinazione di risposta di Chathura e miniera.