2016-03-24 53 views

回答

1

您可以使用下面的代碼來做到這一點。確保您的browsermob proxyselenium server正在運行。然後將代碼下面的代碼粘貼到test.js文件中,並將其放在webdriverio安裝的文件夾中。從cmd轉到該文件夾​​並運行node test.jstest.js所在位置應生成stuff.har

var Proxy = require('browsermob-proxy').Proxy 
    , webdriverio = require("./node_modules/webdriverio/") 
    , fs = require('fs') 
    , proxy = new Proxy() 
; 

proxy.cbHAR('search.yahoo.com', doSeleniumStuff, function(err, data) { 

     if (err) { 

      console.error('ERR: ' + err); 
     } else { 

      fs.writeFileSync('stuff.har', data, 'utf8'); 


     } 
}); 

function doSeleniumStuff(proxy, cb) { 

    var browser = webdriverio.remote({ 
     host: 'localhost' 
     , port: 4444 
     , desiredCapabilities: { browserName: 'firefox', seleniumProtocol: 'WebDriver', proxy: { httpProxy: proxy } } 
    }); 

    browser 
     .init() 
     .url("http://search.yahoo.com") 
     .setValue("#yschsp", "javascript") 
     .submitForm("#sf") 
     .end().then(cb);   

}