specs2 - 如何吞下异常

时间:2015-11-02 20:22:59

标签: scala unit-testing mockito specs2

我使用specs2作为我的测试框架。 我想模拟一个用例,其中actionA返回一个失败的未来。 像这样:

  val actionA = mock[ActionA]
  val actionB = new ActionB(actionA)
  actionA.doSomthing(x) returns Future.failed(new Exception("bla"))
  try {
    Await.result(actionB.doSomthing(request), 1 seconds)
  }catch {
    case e: Exception => println("exception caught: " + e);
  }

问题是如果我没有捕获它,我的测试退出此异常,不规范2有更好的方法来吞下异常吗? 有没有更好的方法来测试这种情况?

谢谢!

1 个答案:

答案 0 :(得分:4)

Await.result(actionB.doSomething(request), 1 seconds) must throwA[Exception]

通过https://etorreborre.github.io/specs2/guide/SPECS2-3.6.5/org.specs2.guide.Matchers.html - >例外

相关问题