Vorrei acquisire l'output del pannello Net da Firebug mentre si esegue un test tramite WebDriver. Stavo pensando di farlo usando NetExport per scaricare le informazioni in un file har. Come posso attivare Firebug per eseguire l'esportazione mentre viene visualizzata una determinata pagina utilizzando "driver.get()"?Come utilizzare Firebug da Selenium WebDriver
risposta
È necessario l'estensione Firestarter oltre a Firebug e NetExport. Ecco come faccio in Ruby:
profile = Selenium::WebDriver::Firefox::Profile.new
profile.add_extension "path/to/firebug.xpi"
profile.add_extension "path/to/fireStarter.xpi"
profile.add_extension "path/to/netExport.xpi")
profile['extensions.firebug.currentVersion'] = "1.7.0a3" # avoid 'first run' tab
profile["extensions.firebug.previousPlacement"] = 1
profile["extensions.firebug.onByDefault"] = true
profile["extensions.firebug.defaultPanelName"] = "net"
profile["extensions.firebug.net.enableSites"] = true
profile["extensions.firebug.netexport.defaultLogDir"] = output_dir
profile["extensions.firebug.netexport.alwaysEnableAutoExport"] = true
driver = Selenium::WebDriver.for :firefox, :profile => profile
Le API equivalenti sono disponibili in Java. Assicurati che le estensioni siano compatibili tra loro (e la tua versione di Firefox).
Se si utilizza Ruby (o si desidera semplicemente avviare rapidamente un visualizzatore HAR dalla riga di comando), controllare il mio HAR gem per un modo semplice per lavorare con i dati in seguito.
Grazie mille per le tue istruzioni @jarib. Ma non riesco a ottenere FirefoxDriver per aggiungere nessuna delle estensioni. Non vedo più l'estensione "1.7.0a3" (tutta la roba 1.7 si chiama 1.7X.0a? E ho scaricato 1,7X.0a3 e ho impostato la versione sullo stesso). Non ci sono eccezioni generate dal metodo addExtension. Qualcuno ha avuto l'estensione firebug da caricare con successo usando Java? – shanti
Come già detto, gli XPI devono essere compatibili tra loro e la versione corrente di Firefox: solo perché ho usato 1.7 non significa che sia giusto per te. Quindi assicurati che tutto funzioni installandoli prima manualmente. FirefoxProfile.addExtension non genera errori se non sono compatibili (semplicemente copia i file nel posto giusto) e Firefox ignorerà semplicemente le estensioni incompatibili. – jarib
Ho funzionato ora. Ho avuto un errore di battitura in una delle opzioni. Ho anche dovuto aggiungere una sospensione di 3 secondi dopo la chiamata 'driver.get()' per ottenere netexport per salvare il registro. Grazie mille. – shanti
Per eseguire Firebug all'interno di selenio WebDriver utilizzando Java:
Actions action = new Actions(driver);
action.sendKeys(Keys.F12).build().perform();
Che lingua stai usando? java, C#, o cosa? –