【问题标题】:how to dermine if a test failed in afterEach of a FunSpec in scalatest如果在 scalatest 中的 FunSpec 之后的每个测试失败,如何进行测试
【发布时间】:2016-07-07 22:37:08
【问题描述】:

在最大规模使用 FunSpec 时,我有一些在 afterEach 中触发的代码。我想仅在测试失败时执行一些代码以获取屏幕截图。我所看到的几乎所有东西都试图通过将断言放在看起来很糟糕的 try 块中来解决这个问题。 TestNG 中是否有类似 onTestFailure 的内容,或者我可以通过 RSpec 获得的上下文来确定测试是否失败?查看 scala 文档,我看到一个采用 configMap 的实现,但是当我运行测试时它是空的。任何帮助将不胜感激。

【问题讨论】:

    标签: scalatest


    【解决方案1】:

    我很确定我想通了。来自 TestNG 背景,必须弄乱固定装置才能完成它似乎很奇怪。我怀疑像我这样背景的其他人也可能会看错地方,所以把这个留在这里帮助别人:

    override def withFixture(test: NoArgTest) = { // after
       val outcome = super.withFixture(test)
       outcome match {
         case Failed(ex) =>
         // log ex (the exception) and a screenshot
       }
       outcome
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-07-19
      • 2016-04-26
      • 1970-01-01
      • 2014-11-18
      • 2013-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多