2013-10-16 10 views
5

Sto usando il cetriolo di zucca per testare la mia app per iPhone. Nella mia app sto utilizzando la finestra di dialogo di avviso a livello di sistema per abilitare la posizione corrente. Devo identificare se ci sono finestre di avviso visualizzate sullo schermo. Ma non sono in grado di identificare la finestra di dialogo dell'avviso a livello di sistema. Ho provato sotto lo script. ma non funzionainteragire con la finestra di dialogo di avviso a livello di sistema in calabash ios

query("view:'UIAlertView'",:message) 
element_exists("alertView child label marked:'#{message}'") 

per favore aiutatemi. Devo fare clic sul pulsante "OK" nella finestra di dialogo.

risposta

6

Penso che per "avviso a livello di sistema" si intende un avviso generato dal sistema operativo.

Esempi di questo tipo di avviso sono "Alcune app vogliono utilizzare la posizione" e "Alcune app desiderano inviarti notifiche".

Per interagire con questi avvisi, è necessario utilizzare le funzioni uia_ * ed è necessario consentire a calabash di avviare l'app con Strumenti.

# check if the alert exists 
if uia_query(:alert).count > 0 
    # dismiss by touching 'OK' 
    uia_tap_mark 'OK' 
end 
+0

Questo sembra funzionare solo con iOS 8, non iOS 7 (Xcode 6.4). Il problema sembra venire da ui_query che restituisce un timeout. Qualche idea ? – Macistador