【发布时间】:2011-10-23 02:52:06
【问题描述】:
我正在使用 Specs2 和 ScalaTest 在 Scala 中进行 BDD。当我断言不应抛出给定异常时,我已经在 Specs2 中写下了期望。
"do something" in {
{
....
} must not(throwA[MyException])
}
我希望能够在 ScalaTest 中编写等价的代码,例如:
"do something" in {
evaluating {
....
} should not produce[MyException]
}
但这不能编译,我找不到这样做的方法。这可能吗?
非常感谢。
【问题讨论】:
-
有趣。你能详细说明用例是什么吗?我想你会想要更具体的东西。要么它应该抛出一个特定的异常,要么它不应该抛出任何异常。你的意思是你想要断言表达式可以正常返回或抛出任何异常,除了你不想看到的那个。如果您的用例有意义,我可以添加“不生产”语法。谢谢。
-
@Bill,在考虑了我当前的用例之后,我认为 ScalaTest 的默认行为(如果发生任何异常则测试失败)已经足够了。谢谢。