Domanda

Qual è il modo migliore per attivare Firebug in Firefox quando si esegue Selenio 2?

Edit: Ok, mi rendo conto "migliore" è suscettibile di interpretazione, ma la soluzione basata sul profilo davvero era un dolore con il selenio 1.0. Quindi, qualsiasi alternativa è considerato migliore fino a prova peggio;)

È stato utile?

Soluzione

È possibile creare il proprio profilo nel codice e aggiungere dinamicamente richiesti componenti aggiuntivi. Supponiamo che si è salvato Firebug XPI nella cartella C: \ FF_Profile cartella come firebug.xpi (vai a Firebug pagina di download , pulsante destro del mouse sul pulsante "Aggiungi a Firefox" e salvare come C:. \ FF_Profile \ firebug.xpi)

Nel codice:

   final String firebugPath = "C:\\FF_Profile\\firebug.xpi";
   FirefoxProfile profile = new FirefoxProfile();       
   profile.addExtension(new File(firebugPath));
   // Add more if needed
   WebDriver driver = new FirefoxDriver(profile);

Questo è descritto in WebDriver FAQ

Altri suggerimenti

Vuoi dire aver Firebug installato nella istanza del browser che lancia WebDriver? Se è così, è possibile passare un'estensione quando si crea un'istanza del driver, ma il modo eaisest è quello di creare un profilo di Firefox con Firebug installato e quindi utilizzare il codice riportato di seguito prima di un'istanza del driver:

System.setProperty("webdriver.firefox.profile", "NAME_OF_FIREFOX_PROFILE_WITH_FIREBUG");

Basta riferimento il tuo profilo per nome. Esempio in Ruby:

@driver = Selenium::WebDriver.for :firefox, :profile => "default"

Quindi, caricare Firefox normalmente, e aggiungi le estensioni desiderate. Saranno ora visualizzati nei test viene eseguito selenio.

A quanto pare il modo in cui le opzioni di Firefox profilo vengono consumati è cambiato in selenio WebDriver.

La vecchia linea di comando (Selenio RC):

java -jar selenium-2.28.0.jar -firefoxProfileTemplate ~/.mozilla/firefox/3knu5vz0.selenium

Aggiornamento per WebDriver: (nota che vuole il profilo nome , piuttosto che la directory)

java -jar selenium-2.28.0.jar -Dwebdriver.firefox.profile=selenium

modificare la posizione di Firefox a qualcosa di simile C: \ Users \ nome utente \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \ sgmqi7hy.default lanciare il vostro firefox da selenio / WebDriver effettuare tutte le impostazioni necessarie chiudere e riavviare il browser firefox da selenio / WebDriver il gioco è fatto, si risolve il problema !!

Ho trovato un profiles.ini in ~ / .mozialla / firefox /. In c'era un profilo denominato predefinito, che ho specificato un simile alla seguente e quindi Firefox è stato aperto in prova, proprio come ho aperto regolarmente (con tutti i plugin, ecc).

java -jar selenium.jar -Dwebdriver.firefox.profile=default

Se nessuna delle opzioni di cui sopra funziona. Quindi provare questo.

  • 1) Aprire terminale e digitate sotto comando (chiudi tutti gli attuali firefox prime sessioni)

firefox -p

  • 2) Si aprirà la possibilità di creare un nuovo profilo di Firefox.
  • 3) Creare un profilo permette di dire "selenio".
  • 4) Una volta che il firefox è aperto subito installare Firebug o qualsiasi altri plug-estensione che si desidera. una volta fatto chiudere la finestra.
  • 5) A questo punto caricare questo nuovo profilo tramite il selenio, l'uso di sotto java dichiarazioni.

    profilo ProfilesIni = new ProfilesIni ();

    FirefoxProfile ffprofile = profile.getProfile ( "SELENIUM");

    WebDriver Driver = nuovo FirefoxDriver (ffprofile);

  • 6) Fatto. Godetevi.

Ho osservato che il Firebug è l'aggiunta al browser ed è disabilitato per impostazione predefinita e non abilitato, quando aggiungo Firebug per Firefox in fase di esecuzione utilizzando WebDriver. Quindi, per rendere abilitare potremmo avere bisogno di aggiungere il sotto la linea di profilo.

profile.setEnableNativeEvents(true);

Supponendo che, Firebug è installato. Il vostro obiettivo è quello di eseguire Firebug. Firebug può essere eseguito / eseguire premendo il tasto F12. Così Firebug può essere eseguito seguendo il comando di selenio WebDriver con Java:

Actions action = new Actions(driver);
action.sendKeys(Keys.F12).build().perform();
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top