2013-10-05 133 views
0

我想在我的Selenium测试中使用browsermob代理。因此,我写了下面的代码:访问被拒绝,同时启动browsermob代理服务器

require 'selenium-webdriver' 
require 'browsermob/proxy' 

server = BrowserMob::Proxy::Server.new ".//browsermob-proxy-2.0-beta-8//" 
server.start 

但是当我运行上面的脚本,它会导致成Access is denied. (5) (ChildProcess::LaunchError)错误:

c:/Ruby193/lib/ruby/gems/1.9.1/gems/childprocess-0.3.6/lib/childprocess/windows/process_builder.rb:87:in `create_process': Access is denied. (5) (ChildProcess::LaunchError) 
     from c:/Ruby193/lib/ruby/gems/1.9.1/gems/childprocess-0.3.6/lib/childprocess/windows/process_builder.rb:34:in `start' 
     from c:/Ruby193/lib/ruby/gems/1.9.1/gems/childprocess-0.3.6/lib/childprocess/windows/process.rb:63:in `launch_process' 
     from c:/Ruby193/lib/ruby/gems/1.9.1/gems/childprocess-0.3.6/lib/childprocess/abstract_process.rb:67:in `start' 
     from c:/Ruby193/lib/ruby/gems/1.9.1/gems/browsermob-proxy-0.1.3/lib/browsermob/proxy/server.rb:27:in `start' 
     from test.rb:6:in `<main>' 

请帮我摆脱错误的。

回答

0

我面临同样的问题,很难从文档here弄清楚,以了解到browsermob代理服务器的路径也应包括可执行文件。

在你的情况下,代码应该是下一个:

require 'selenium-webdriver' 
require 'browsermob/proxy' 

server = BrowserMob::Proxy::Server.new ".//browsermob-proxy-2.0-beta-8//bin//browsermob-proxy.bat" 
server.start 

希望它可以帮助