【问题标题】:webdrivercss doesn't save screenshotswebdrivercss 不保存截图
【发布时间】:2015-10-27 09:16:31
【问题描述】:

我是 webdriverio 和 webdrivercss 的新手。我需要制作一些 DOM 元素的屏幕截图。所以,我写了以下内容:

// init WebdriverIO
var client = require('webdriverio').remote({desiredCapabilities:{browserName: 'firefox'}});
// init WebdriverCSS
require('webdrivercss').init(client);
client
    .init()
    .url('http://webdriver.io/')
    .webdrivercss('startpage',[
        {
            name: 'header',
            elem: '.mainnav'
        }
    ], function(err, res) {
            console.log(err, res);
    })
    .end();

结果我得到了空的 ./webdrivercss 目录和 'err', 'res' 回调参数作为 'undefined' 值。

节点版本'v0.12.7'。

【问题讨论】:

  • 请关闭问题,我刚刚发现 webdrivercss 不支持 webdriver v3.0.0 及更高版本。

标签: selenium-webdriver webdriver automated-tests webdriver-io


【解决方案1】:

如果您需要创建某些特定元素的屏幕截图,您需要

  1. 创建浏览器截图

  2. 获取页面上的大小和位置,并从步骤 1 中截取的屏幕截图中截取;

c#代码:

public Bitmap getElementImg(Point point, Size size)
    {
        Screenshot myScreenShot = ((ITakesScreenshot)Instance).GetScreenshot();

        Bitmap screen = new Bitmap(new MemoryStream(myScreenShot.AsByteArray));

        Bitmap eleScreenshot = screen.Clone(new Rectangle(point, size), screen.PixelFormat);

        return eleScreenshot;
    }

Point point, Size size -- 元素大小和位置

【讨论】:

    【解决方案2】:

    我之前也处理过这个问题。结果发现 WebdriverCSS 与最新版本的 WebdriverIO 不兼容。

    @christian-bromann 评论于 7 月 9 日

    您好 @terekim,我目前正在更新 WebdriverCSS,使其适用于 WebdriverIO v3。目前它不起作用。请继续关注。

    https://github.com/webdriverio/webdrivercss/issues/89

    WebdriverCSS 的最新子v3 版本是2.4.5

    【讨论】:

      猜你喜欢
      • 2019-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-29
      • 2019-11-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多