【问题标题】:How do I take a Selenium screenshot when an MSpec assertion fails? [duplicate]当 MSpec 断言失败时,如何获取 Selenium 屏幕截图? [复制]
【发布时间】:2014-08-15 16:12:32
【问题描述】:

我正在使用 MSpec 测试框架/运行器和 Selenium Web 驱动程序。我想在测试失败时截取屏幕截图并将其保存,以便稍后查看错误。我认为可能有两种可能性:

  • MSpec 是否有断言失败事件?类似于清理接口的东西?
  • Selenium 是否有某种故障事件可以自动截屏?

谁能告诉我你是否做过类似的事情以及如何做的?


这里已经回答了一个类似的问题,但我的情况不同。 我不想修改我的测试并在每个测试中都放一个 try catch。

【问题讨论】:

    标签: c#-4.0 selenium mspec


    【解决方案1】:

    尽管 Selenium 很高兴支持截屏(请参阅 this answer 在 C# 中截屏),但它不会知道您在其中使用它的测试运行器。事实上,作为一个多用途的浏览器驱动,除了测试之外,它还可以用于很多其他的任务。

    如果无法触发此代码,您需要向 MSpec 运行器添加某种钩子。我已经做了类似的事情,在 Java 中与 JUnit 配合得很好(失败的 @Rule),恐怕我不熟悉 MSpec 来建议在这里使用什么。我建议您将屏幕截图作为构建测试工件发布,以便在 CI 环境中轻松访问。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-03-11
    • 2013-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多