Robot Framework - 使用系统代理运行 Firefox

Posted

技术标签:

【中文标题】Robot Framework - 使用系统代理运行 Firefox【英文标题】:Robot Framework - Run Firefox with system proxy 【发布时间】:2013-05-03 23:52:47 【问题描述】:

好的,我得到了这个代码:

$SERVER                   http://www.google.pt/
$BROWSER                  firefox
$DELAY                    0

*** Keywords ***

Open Browser To Google
    Open Browser  $SERVER  $BROWSER
    Maximize Browser Window
    Set Selenium Speed  $DELAY

在我运行关键字“Open Browser To Google”后,firefox 会打开,甚至无法打开 url。 我想我错过了我工作办公室的代理来访问外部网络。 如何配置 firefox webdriver 以使用代理打开(系统默认)?

【问题讨论】:

【参考方案1】:

假设您使用的是 Selenium2Library(而不是 SeleniumLibrary),实现此目的的最简单方法是创建一个 firefox 配置文件并将其作为参数传递给 open browser 关键字。

1-创建 Firefox 配置文件

启动配置文件管理器

firefox.exe -P (Windows)

/Applications/Firefox.app/Contents/MacOS/firefox-bin -profilemanager (OSX)

./firefox -profilemanager (Linux)

创建一个新的配置文件(将其保存到已知位置)。打开配置文件并打开选项对话框的高级选项卡。选择“网络”并根据需要设置代理设置。关闭选项和 Firefox。

2-在测试中指定 Firefox 配置文件

$SERVER                   http://www.google.pt/
$BROWSER                  firefox
$DELAY                    0
$FF_PROFILE               C:/ff_profile

*** Keywords ***

Open Browser To Google
    Open Browser  $SERVER  $BROWSER  ff_profile_dir=$FF_PROFILE
    Maximize Browser Window
    Set Selenium Speed  $DELAY

运行时,您的测试现在将使用此 Firefox 配置文件并正确配置代理设置。当然这种方法仅限于 Firefox。通过其他浏览器运行无论如何都会获取系统网络配置,所以这应该不是问题。

【讨论】:

我正在这样做,但是 ff 要求用户名和密码...每次运行测试都必须输入这些很无聊...我该如何克服这个问题?

以上是关于Robot Framework - 使用系统代理运行 Firefox的主要内容,如果未能解决你的问题,请参考以下文章

最新robot framework 建立系统关键字

Robot Framework之接口测试

Robot Framework作者建议怎么选择自动化测试框架

Windows系统 - python3(3.7以上版本)部署自动化框架robot framework

Robot Framework - 从带有参数的其他 *.robot 脚本调用 *.robot 脚本

学习使用Robot Framework自动化测试框架——简单组合测试例子