首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Nunit多个断言中截图

在Nunit多个断言中截图
EN

Stack Overflow用户
提问于 2020-08-08 22:32:04
回答 1查看 78关注 0票数 0

我想在Assert.Multiple内部的断言条件失败时截图。

例如。

代码语言:javascript
复制
[Test]
public void TestScreenshot()
{
    Assert.Multiple(() =>
    {
        Assert.IsTrue(false);
        Assert.Istrue(true);
    });
}

在上面的测试中,假设第一个断言是failure.So,我想在第一个断言之后截屏。但是,一旦在多个条件中执行了所有步骤,Assert.Multiple将返回断言。

那么,在添加到多个条件中的条件通过/失败后,有没有办法截图呢?

EN

回答 1

Stack Overflow用户

发布于 2020-08-09 06:39:23

不幸的是,不支持您想要做的事情。但是,在失败的情况下,以下方法可能会起作用。

代码语言:javascript
复制
Assert.IsTrue(false, () => TakeScreenShotAndReturnMessage("Your error message"));
...
private string TakeScreenShotAndReturnMessage(string msg)
{
    // Code here to take the screen shot

    TestContext.AddTestAttachment(pathToScreenShot);

    return msg;
}

以下是一些警告:

  1. 黑客没有比这更好的黑客了!该代码滥用了一项旨在动态生成错误消息的功能。

  1. 它是纯粹的“论坛代码”,可能需要修改。如果你这样做了,如果可以的话请随意编辑这篇文章。根据您的NUnit版本,您可能需要使用delegate而不是lambda。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63316539

复制
相关文章

相似问题

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