2010-08-06 5 views
26

Quelle est la meilleure façon d'activer Firebug dans Firefox lors de l'exécution de Selenium 2? Edit: Ok, je me rends compte que le "meilleur" est ouvert à l'interprétation, mais la solution basée sur le profil était vraiment pénible avec le sélénium 1.0. Donc, toute alternative est considérée comme meilleure jusqu'à ce qu'elle soit pire;)Comment exécuter Firebug dans Selenium WebDriver (Selenium 2)?

Répondre

47

Vous pouvez créez votre profil dans le code et ajoutez dynamiquement les modules complémentaires requis. Supposons que vous avez sauvegardé Firebug XPI dans le dossier C: \ FF_Profile en tant que firebug.xpi (allez à Firebug download page, faites un clic droit sur "Ajouter à Firefox" et sauvegardez en C: \ FF_Profile \ firebug.xpi).

Dans le code:

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); 

Ceci est décrit dans WebDriver FAQ

+1

Votre exmple est un peu mieux que la faq, merci! – krosenvold

+0

C'est totalement génial +100 si je le pouvais. Makes émigrent vers selenium2 vaut par lui-même – krosenvold

+0

Il y a beaucoup de choses est Selenium2 qui récompense le temps passé pour la migration. Personnellement, j'ai trouvé que le modèle Page Objects est très pratique et facilite grandement les tests d'applications Web dynamiques/AJAX. Donc, je suis vraiment amoureux de WebDriver :) –

10

Voulez-vous dire avoir firebug installé dans l'instance de navigateur que lance webdriver? Si oui, vous pouvez passer une extension lorsque vous instancier le conducteur, mais la eaisest façon est de créer un profil Firefox avec Firebug installé puis utilisez le code suivant avant instanciation du pilote:

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

+0

C'est à peu près la façon dont cela a été fait dans la version 1.0 et cela s'est toujours avéré être un problème lorsque Firefox a été mis à jour. Je voudrais vraiment passer dans l'extension .... – krosenvold

1

référence Juste votre profil par nom. Exemple en Ruby:

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

Ensuite, chargez Firefox normalement et ajoutez les extensions souhaitées. Ils vont maintenant apparaître dans vos tests de sélénium.

1

Apparemment, la façon dont les options de profil firefox sont consommées a changé dans Selenium WebDriver.

L'ancien commandline (Selenium RC):

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

Mise à jour pour WebDriver: (notez qu'il veut que le profil nom plutôt que le répertoire)

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

En supposant que, Firebug est installée. Votre objectif est d'exécuter Firebug. Firebug peut être exécuté/exécuté en appuyant sur la touche F12. Alors Firebug peut être exécuté en suivant la commande de Sélénium WebDriver avec Java:

Actions action = new Actions(driver); 
action.sendKeys(Keys.F12).build().perform(); 
0

modifier votre position Firefox à quelque chose comme C: \ Users \ user-name \ AppData \ Roaming \ Mozilla \ Firefox \ Profiles \ sgmqi7hy. par défaut lancer votre firefox à partir de selenium/webdriver faire tous vos paramètres requis fermer et redémarrer navigateur firefox à partir de selenium/webdriver c'est tout, ça résout votre problème !!

0

J'ai trouvé un profiles.ini dans ~/.mozialla/firefox /. Il y avait un profil nommé default, que j'ai spécifié comme le suivant et ensuite firefox a été ouvert en test comme je l'ai ouvert régulièrement (avec tous les plugins etc).

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

Si aucune des options ci-dessus ne fonctionne. Alors essayez ceci.

  • 1) Ouvrez le terminal et le type ci-dessous commande (fermer toutes les sessions existantes de Firefox premier)

firefox -p

  • 2) Ceci ouvrira une option pour créer un nouveau Firefox profil.
  • 3) Créer un profil permet de dire "SELENIUM".
  • 4) Une fois que le firefox est ouvert tout de suite, installez firebug ou n'importe quelle autre extension de plugins que vous voulez . Une fois terminé, fermez la fenêtre.
  • 5) Maintenant, chargez ce nouveau profil via du sélénium, utilisez ci-dessous les instructions java .

    Profil ProfilesIni = new ProfilesIni();

    FirefoxProfil ffprofile = profile.getProfile ("SÉLÉNIUM");

    Pilote WebDriver = nouveau FirefoxDriver (ffprofile);

  • 6) Terminé. Prendre plaisir.

0

J'ai observé que le Firebug ajoute au navigateur et il est désactivé par défaut et non activé, quand j'ajouter à Firefox Firebug lors de l'exécution en utilisant WebDriver. Donc, pour le rendre possible, nous pourrions avoir besoin d'ajouter la ligne ci-dessous au profil.

profile.setEnableNativeEvents(true); 
Questions connexes