首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Coypu屏幕截图

Coypu屏幕截图
EN

Stack Overflow用户
提问于 2012-10-05 03:55:36
回答 2查看 1.5K关注 0票数 4

在场景结束时,如果失败了,我想拍一张照片。以下代码不起作用:

代码语言:javascript
复制
[AfterScenario]
public void AfterScenario()
{
    if(ScenarioContext.Current.TestError != null)
    {
     WebBrowser.Driver.CaptureScreenShot(ScenarioContext.Current.ScenarioInfo.Title);
    }
}

我想这可能是因为我使用Coypu (它包装了selenium )启动我的浏览器。驱动程序未实现“captureScreenShot”方法。所以我的问题是:当我使用coypu启动我的浏览器时,如何在场景之后截取屏幕截图?

启动浏览器的代码如下:

代码语言:javascript
复制
sessionConfiguration.Driver = typeof (SeleniumWebDriver);
sessionConfiguration.Browser = Drivers.Browser.Firefox;
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-11 23:16:13

正如您所说,这目前还没有在Coypu中实现。原因是,到目前为止,我根本就不需要截图,直到现在也没有人问过。

要访问本地驱动程序(在您的示例中为WebDriver),请使用BrowserSession.Native,然后可以使用WebDriver的GetScreenshot方法。这将最终看起来像这样(免责声明:未测试):

代码语言:javascript
复制
var driver = (ITakesScreenshot) coypuBrowserSession.Native;

var screenshot = driver.GetScreenshot();

screenshot.SaveAsFile("c://screenshot.png", System.Drawing.Imaging.ImageFormat.Png);

github上的I've opened an issue将其添加到Coypu的BrowserWindow应用程序接口中

票数 2
EN

Stack Overflow用户

发布于 2016-07-13 21:13:15

这现在在Coypu中是原生可用的。您可以在以下位置找到文档:

https://github.com/featurist/coypu#screenshots

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12734873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档