我想寫機器人框架測試用例下載一個excel從一個網站自動文件。我想使用機器人腳本爲我的瀏覽器設置首選項,以便在我所需的目標目錄中自動下載文件而不問我!如何設置對於Firefox偏好機器人框架
我已經試過this solution;但它不起作用。
我也嘗試作爲this說,工作正常設置一個現有的Firefox的配置文件,但我希望能夠自動調整偏好。
有什麼想法?
正如@Sachin說,我寫了一個python腳本設置爲Firefox偏好以及:
from selenium import webdriver
class WebElement(object):
@staticmethod
def create_ff_profile(path):
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2)
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", path)
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", 'application/csv')
fp.update_preferences()
return fp
並在機械手的場景中使用它:
*** Settings ***
Library Selenium2Library
Library Selenium2LibraryExtensions
Library OperatingSystem
Library ../../../Libraries/WebElement.py
*** Variables ***
${profileAddress} C:\\Users\\user\\AppData\\Roaming\\Mozilla\\Firefox\\Profiles\\VdtJKHal.default
${destinationUrl} http://www.principlesofeconometrics.com/excel.htm
${browserType} firefox
${downloadDir} C:\\Users\\user\\Desktop
${acceptedTypes} text/csv/xls/xlsx
${itemXpath} //*[text()="airline"]
*** Test Cases ***
My Test Method
log to console Going to open browser with custome firefox profile!
${profile} = create_ff_profile ${downloadDir}
Open Browser ${destinationUrl} ${browserType} ff_profile_dir=${profile}
Maximize Browser Window
Click Element xpath=${itemXpath}
Sleep 10
Close Browser
但我在方法_make_browser
遇到錯誤TypeError: coercing to Unicode: need string or buffer, FirefoxProfile found
圖書館_browsermanagement.py
。
我編輯的代碼,並刪除return fp
,然後改變了機器人的測試情況是這樣的:
,並用它在機器人的場景:
*** Test Cases ***
My Test Method
log to console Going to open browser with custome firefox profile!
create_ff_profile ${downloadDir}
Open Browser ${destinationUrl} ${browserType} ff_profile_dir=${profileAddress}
Maximize Browser Window
Click Element xpath=${itemXpath}
Sleep 10
Close Browser
它去掉了異常,並設置我的偏好以及,但我仍然需要傳遞個人資料地址。
從什麼庫你得到'create_profile'關鍵字? –
我已經在python文件中編寫了這個文件,並將其作爲庫包含在套件中。 –
哦,是的!我現在明白了!我會試試看! –