【问题标题】:PhantomJS with WebDriver带有 WebDriver 的 PhantomJS
【发布时间】:2016-03-23 08:03:16
【问题描述】:

是否可以用 WebDriver 驱动 PhantomJS,而且在浏览各种页面时,使用 PhantomJS 记录每个页面的网络流量?

我似乎无法找到解决方案,或在网上找到一个。

【问题讨论】:

    标签: javascript selenium selenium-webdriver webdriver phantomjs


    【解决方案1】:

    是的,当然。

    启动一个代理服务器,如 Browsermobset it as 您的 Selenium 代理,对于您感兴趣的页面/URL 模式,请致电:

    proxy.newHar("<name>");
    
    driver.get(url);
    
    Har har = proxy.getHar();
    

    根据上一个链接上的示例。

    HAR file 将包含与您的页面请求关联的每个单独请求和响应的全部内容,然后您可以通过 an API 对其进行持久化、可视化或查询。

    显然,您可以自动执行此操作,安排 PhantomJS 测试运行,并使用您自己的代码生成您自己的自定义指标;将 HAR 通过管道传输到支持 JSON 的数据库中进行查询(比如 Elasticsearch)和可视化,或者只是保存 HAR 以进行离线查询和比较。

    您可以通过获取字符串形式的 HAR 并粘贴到 http://www.softwareishard.com/har/viewer/ 来可视化输出。它为您提供与 Chrome 的网络标签几乎相同的输出,这表明捕获的数据几乎相同。

    【讨论】:

    • 谢谢,我今天用 WebDriverIO 设置了 BMP。从那里我能够收集我需要用于一些断言的网络请求。
    猜你喜欢
    • 2016-12-05
    • 2013-06-25
    • 2016-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-21
    相关资源
    最近更新 更多