運行Selenium 2時,在Firefox中激活Firebug的最佳方式是什麼?如何在Selenium WebDriver(Selenium 2)中運行Firebug?
編輯:好的,我意識到「最好」是可以解釋的,但基於配置文件的解決方案真的用於硒1.0。所以任何替代方案都被認爲更好,直到證明情況更糟;)
運行Selenium 2時,在Firefox中激活Firebug的最佳方式是什麼?如何在Selenium WebDriver(Selenium 2)中運行Firebug?
編輯:好的,我意識到「最好」是可以解釋的,但基於配置文件的解決方案真的用於硒1.0。所以任何替代方案都被認爲更好,直到證明情況更糟;)
你可以在代碼中創建您的配置文件並動態添加所需的加載項。假設您將Firebug XPI作爲firebug.xpi保存到C:\ FF_Profile文件夾中(轉到Firebug download page,右鍵單擊「添加到Firefox」並保存爲C:\ FF_Profile \ firebug.xpi)。
在代碼:
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);
你的意思是在webdriver啓動的瀏覽器實例中安裝了firebug?如果是這樣,您可以在實例化驅動程序通過一個擴展,但eaisest方法是創建安裝螢火火狐配置文件,然後使用下面的代碼實例化驅動程序之前:
System.setProperty("webdriver.firefox.profile", "NAME_OF_FIREFOX_PROFILE_WITH_FIREBUG");
這或多或少是它在1.0中完成的方式,當Firefox升級時它總是變得很麻煩。我真的很想通過擴展.... – krosenvold 2010-08-06 10:00:22
描述只是通過名稱來引用您的個人資料。 Ruby中的示例:
@driver = Selenium::WebDriver.for :firefox, :profile => "default"
然後,正常加載Firefox並添加所需的擴展。他們現在將出現在您的Selenium測試運行中。
Selenium WebDriver顯然改變了firefox-profile選項的使用方式。
舊的命令行(硒RC):
java -jar selenium-2.28.0.jar -firefoxProfileTemplate ~/.mozilla/firefox/3knu5vz0.selenium
更新了的webdriver:(注意要配置文件名而非目錄)
java -jar selenium-2.28.0.jar -Dwebdriver.firefox.profile=selenium
假設,Firebug是安裝。你的目標是運行Firebug。按F12鍵可以運行/執行Firebug。所以,螢火蟲可以通過硒的webdriver的下面的命令與Java運行:
Actions action = new Actions(driver);
action.sendKeys(Keys.F12).build().perform();
修改Firefox的位置,像 C:\用戶\用戶名\ AppData \漫遊\ Mozilla的\火狐\ Profiles文件\ sgmqi7hy。默認 從selenium/webdriver啓動你的Firefox 使所有您需要的設置 關閉,並從硒/ webdriver重新啓動Firefox瀏覽器 就是這樣,它解決了您的問題!
我在〜/ .mozialla/firefox /中找到了一個profiles.ini文件。在那裏有一個名爲default的配置文件,我指定了一個類似於下面的配置文件,然後firefox在測試中打開,就像我經常打開它(使用所有插件等)。
java -jar selenium.jar -Dwebdriver.firefox.profile=default
如果以上選項均不起作用。然後試試這個。
火狐-p
5)現在通過selenium加載這個新的配置文件,使用下面的java 聲明。
ProfilesIni profile = new ProfilesIni();
FirefoxProfile ffprofile = profile.getProfile(「SELENIUM」);
WebDriver driver = new FirefoxDriver(ffprofile);
6)完成。請享用。
我觀察到的螢火蟲被添加到瀏覽器,它是默認禁用,未啓用,當我使用webdriver的在運行時添加螢火到Firefox。所以爲了使它啓用,我們可能需要將下面的行添加到配置文件中。
profile.setEnableNativeEvents(true);
你的實例比常見問題好一些,謝謝! – krosenvold 2010-08-06 12:54:12
如果可以的話,這完全是真棒+100。使遷移到硒2本身值得它 – krosenvold 2010-08-06 16:26:02
有很多事情是Selenium2支付遷移的時間花費。就我個人而言,我發現頁面對象模式非常方便,使得動態/ AJAX網絡應用程序的測試更容易。所以我真的愛上了WebDriver :) – 2010-08-09 08:12:29