我有一个基于perl的selenium脚本,声明如下:
$sel = Test::WWW::Selenium->new( host => "localhost",
port => 4444,
browser => "*chrome",
browser_url => "https://$ARGV[0]/" );
这会引发Firefox浏览器。我希望当Firefox浏览器被抛出时,它被配置为使用我的代理,即127.0.0.1:8080,我已经启动了代理服务。如何在不对上述代码进行任何更改的情况下完成此操作?
答案 0 :(得分:0)
对于Firefox,您需要create a profile来获取Selenium。使用-ProfileManager -no-remote
启动Firefox,以便能够选择此配置文件。相应地配置它。
使用Selenium webdriver启动Firefox时,您可以指定要用于webdriver.firefox.profile
的配置文件
我找不到使用Perl API实现相同的解决方案。您可能必须破解源才能指定配置文件。只需将-P
加上配置文件的名称添加到浏览器进程的命令行选项中。
或者,您可以在运行测试之前在路径变量中插入脚本。例如,在Unix上:
#!/bin/bash
/usr/bin/firefox -P selenium
将其保存在$HOME/selenium/bin/firefox
中,使这个新文件可执行,并且:
export PATH="$HOME/selenium/bin/firefox;$PATH"
测试不会认为脚本是firefox可执行文件并运行它。然后,该脚本将使用正确的参数运行Firefox。