5

Sto usando selenio-2.30.0 per eseguire un singolo test (su Windows) che viene eseguito per molte ore (~ 8 ore). Stavo usando il driver FF, ma esaurisce la memoria dopo appena 45 minuti o meno, & l'esecuzione del test è appena terminata. Non ero in grado di utilizzare HTMLUnitDriver (pensavo che una soluzione java pura fosse la risposta) per funzionare allo stesso modo del driver FF (in quanto ha bisogno di aspettare i carichi di pagina & Non ho sicuramente voluto inserire il thread random sleeps nel mio codice o implementare qualsiasi nuova funzione estendendo il HTMLUnitDriver).Come faccio a far girare un Selenium WebDriver per molte ore (CHO) senza causare problemi di crash/OutOfMemory?

  • Non riesco a rompere il caso di test su più unità più piccole.
  • non riesco a ricaricare il driver come e quando vedo pesante utilizzo della memoria

c'è un modo per ottenere questo lavoro?

risposta

3

Ho trovato questo link: creating-firefox-profile-for-your-selenium-rc-tests, & è stato abbastanza utile. Creato un nuovo profilo firefox con impostazioni minime assolute, & il test è stato eseguito senza problemi per le ultime 4 ore. Grazie mille per l'aiuto ragazzi!

1

Che tipo di test stai facendo? Il selenio viene utilizzato principalmente per i test di accettazione. Sembra che quello che stai cercando di fare sia più come un test di ammollo sul tuo sistema.

Se questo è il caso, dare un'occhiata a JMeter, è molto più adatto a questo tipo di lavoro. Tuttavia, una differenza piuttosto significativa tra le due tecnologie è che JMeter funziona a livello di protocollo (richiesta HTTP) in opposizione all'uso di Selenium dell'HTML reso.

+0

JMeter sembra un buon strumento per il test del carico, ma ho bisogno di eseguire javascript e la mia applicazione acquisisce valori da diversi siti Web pubblici esterni ogni pochi secondi, motivo per cui ho scelto il selenio. (Stavo usando watij prima, ma la perdita nel driver IE ha causato l'arresto di IE in pochi minuti) – srami

+0

Nessun problema, stavo solo confermando che stavi usando lo strumento appropriato per quello che stai cercando di fare (che suona come te siamo). Hai mai pensato che forse c'è una perdita nel Javascript per la tua applicazione rispetto al selenio? (come se tu abbia un iframe o qualcosa che potrebbe essere la costruzione di oggetti nel corso del test). Inoltre, si ottengono gli stessi risultati quando si esegue il test utilizzando un browser non Firefox? IE (<9) presenta problemi significativi con Javascript, ma Chrome dovrebbe funzionare con modifiche minime. –

+0

Io sfortunatamente non ho un handle sul lato server, e IE 8 si blocca in pochi minuti e devo ancora provare il driver chrome – srami

-1

Cosa fa crash, il codice di test Java o lo stesso Firefox? Se si tratta del codice di test Java, sei sicuro di non aver perso memoria? O forse la perdita di memoria è sul lato server?

+0

Firefox si blocca o si blocca, dato che non chiudo mai il mio WebDriver. – srami