2012-10-23 32 views
3

我使用Selenium WebDriver和firefox。每次硒在臨時文件夾中生成firefox的新anoniumus配置文件並退出後,將其刪除。我需要這個配置文件。我怎麼才能得到它? F.e.個人資料存儲在保存由Selenuim Web Driver生成的firefox配置文件

C:\Documents and Settings\Developer\Local Settings\Temp\anonymous5583304190515426768webdriver-profile 

關停的webdriver與

driver.quit(); 

檔將被移除後,但它已經登錄,我想用它的下一次迭代,用它INITING的webdriver:

FirefoxDriver driver = new FirefoxDriver(new FirefoxProfile(profileFolder)); 

是否有可能保存配置文件沒有骯髒的黑客,如應付整個文件夾,而驅動程序工程(我不知道它甚至可以工作,因爲在windows中,文件夾被鎖定,而Firefox啓動時)?在Selenium中可能存在一些API嗎?

回答

2

爲什麼不只是改變方法?

  • Create firefox profile這將是乾淨的,並以某種方式命名你知道它是什麼。例如SELENIUM
  • 初始化時的webdriver:

    ProfilesIni allProfiles = new ProfilesIni(); 
    FirefoxProfile desiredProfile = allProfiles.getProfile("SELENIUM"); 
    WebDriver driver = new FirefoxDriver(desiredProfile); 
    

這樣,你確保這個配置文件將被任何時間使用你做的測試...

+0

不幸的是,硒副本從輸入配置文件數據到anonymous5583304190515426768webdriver-profile這樣的時態配置文件中,因此所有的cookie都會在其中(並且在測試關機後被刪除)。 – rdo

+2

@rdo只需查找'profile.path值',就可以取回該tmp配置文件。使用python綁定的示例http://stackoverflow.com/a/33350778/2480481 – erm3nda