如何使用robotframework和Selenium库加载特定的Firefox配置文件

时间:2018-06-19 21:01:12

标签: selenium robotframework firefox-profile

我正在尝试使与网站相关的一些任务自动化,并且我想使用Robot Framework中的Selenium库加载Firefox配置文件(已完成特定设置)。

我在下面写了(其中不包含所有步骤)-

*** Setting ***  
Library    SeleniumLibrary
Library    AutoItLibrary   
Library    Process 

*** Variable ***
${url}=    MY URL HERE
${ff}=    C://Program Files//Mozilla Firefox

***Test Case***    
Load FF profile
   Create WebDriver    Firefox    firefox_profile=${ff}
   Go To    ${url}

上面的代码加载了Firefox浏览器,但没有加载我正在寻找的Firefox配置文件。我如何告诉wedriver启动特定的Firefox配置文件?我已经从Selenium Library的“ 创建WebDriver ”方法中查看了各种设置,而所有这些设置都无济于事。

我可以使用下面的AutoIT代码启动所需的Firefox配置文件-

$FF = @ProgramFilesDir & "\Mozilla Firefox\firefox.exe"
Run($ff)

2 个答案:

答案 0 :(得分:0)

您提供给Create Webdriver的配置文件路径看起来像FF的安装目录-至少在上面的示例中。它必须是 profile 目录的完整路径。

如果仍然无法满足您的要求,请尝试使用Open Browser keyword-更高级,并使用参数ff_profile_dir进行精确设置。


autoit代码为您工作,因为它只是启动FF二进制文件,因此浏览器将使用默认(通常的)配置文件启动。当Selenium启动浏览器实例时,它将创建一个全新的配置文件-因此不会被您的设置,扩展名等“污染”-如果未通过关键字中的这些参数覆盖。

答案 1 :(得分:0)

这对我有用:

Start_Firefox
    [Arguments]    ${URL}
    ${FF_PROFILE}=    Set Variable    C:\\Your\\path\\to\\profile\\here\\FFprofile
    Open Browser    ${URL}     browser=ff    ff_profile_dir=${FF_PROFILE}