2014-04-09 18 views
11

Uso Google Chrome con Intern per eseguire test automatici e vorrei sapere se c'è un modo per avviare Chrome in modalità emulazione dalla CLI o utilizzando un flag specifico per verificare il rendering mobile. Se no, conosci una buona soluzione?Avvio dell'emulazione Chrome dalla riga di comando

Potrei utilizzare direttamente l'emulatore Android (da Android SDK) con l'apk Selenium Webdriver o con Chrome mobile ma i test si bloccano per la maggior parte del tempo, gli emulatori non rispondono e devo riavviarlo. Inoltre, ho bisogno di testare il più ampio ambito possibile, non limitato ai dispositivi Android. Chrome su desktop è molto più stabile e anche se un test fallisce, chrome risponde sempre e può essere chiuso automaticamente da Intern.

Ho provato una soluzione alternativa con il flag "--enable-touch-events" e con un utente personalizzato, ma sta producendo comportamenti strani. Forse qualche altra bandiera mi aiuterebbe?

Grazie in anticipo per la risposta.

risposta

8

Questo è attualmente not possible in Chrome.

E 'una caratteristica che ho sempre voluto me stesso in modo Sono andato avanti e ha presentato una richiesta di funzionalità per essa al seguente link:

https://code.google.com/p/chromium/issues/detail?id=373169&thanks=373169&ts=1400050662

sto incrociando le dita, ma wouldn Mi fa male se tu e le altre persone interessate a questo sono andato e lasciato un commento sul thread troppo. Più persone lo chiedono, maggiori sono le possibilità che venga implementato. E sembra che sarebbe banale da implementare poiché al momento richiede solo un paio di clic del mouse per entrare in modalità emulazione.

+0

avrei trovato questo utile così hanno fissato –

0

Selenio consente agli utenti di emulare Chrome su un dispositivo mobile utilizzando il codice in questo modo:

Map<String, String> mobileEmulation = new HashMap<>(); 
mobileEmulation.put("deviceName", "Nexus 5"); 

ChromeOptions chromeOptions = new ChromeOptions(); 
chromeOptions.setExperimentalOption("mobileEmulation", mobileEmulation); 
WebDriver driver = new ChromeDriver(chromeOptions);