2015-08-28 9 views
5

Im che prova a scorrere con successo sul Appium utilizzando il seguente codice:Appium non è in grado di scorrere su iOS 8.4

// java 
JavascriptExecutor js = (JavascriptExecutor) driver; 
HashMap<String, String> scrollObject = new HashMap<String, String>(); 
scrollObject.put("direction", "down"); 
scrollObject.put("element", ((RemoteWebElement) element).getId()); 
js.executeScript("mobile: scroll", scrollObject); 

Tuttavia, sto ottenendo un errore JavaScript quando si cerca di scorrere oltre la parte inferiore del UITableView a causa di un noto problema appium: https://github.com/appium/appium/issues/4836

Questo problema insieme isDisplayed il fatto di appium() restituisce sempre true (se la cella è visibile sullo schermo) e appium non è in grado di fare clic su una cella non visibile, significa che appium non è in grado di scorrere e selezionare oggetti.

Qualcuno ha trovato un modo per aggirare questo?

risposta

1

Quindi al momento sembra che potrebbe non esserci un modo per aggirare questo. Darshan menzionato sopra questo problema di scorrimento esiste ancora in iOS 8.4 e dalla navigazione in Internet sembra che altri abbiano la stessa vista

0

Utilizzare il tocco come possibile soluzione temporanea. Siamo in grado di scorrere rapidamente come scorrere e scorrere sullo schermo, così come gli elementi. Non possiamo effettivamente scorrere su un UIAScrollView, ma possiamo su UIACollectionView.

JavascriptExecutor js = (JavascriptExecutor) driver; 
HashMap scrollObject = new HashMap(); 
scrollObject.put("direction", "down"); 
js.executeScript("mobile: scroll", scrollObject); 

Per risolvere problema con isDisplayed() sempre vero che si può provare

if(!driver.findElements(By.name(using)).isEmpty()) { 
... 
} 

Sostituire 'usando' dal localizzatore, anche credo che questo problema lo scorrimento deve essere al deliberato dal Appium cellulare: scorrere, e il tuo codice sembra a posto, inoltre puoi provare a utilizzare lo scorrimento verticale anziché Scroll.

+0

Darshan, questo sta usando 'mobile: scroll' è corretto? Sembra molto simile al mio codice originale nella domanda? –

+1

Penso che abbiano risolto questo problema di scrolling da 8.3 ma esiste ancora in 8.4, abbiamo bisogno di trovare qualche alternativa .. –

+0

Ciao Darshan. Grazie per la risposta aggiornata - darà un andare. Qual è il codice necessario per lo scorrimento verticale (anziché mobile: scroll)? –