我想在Scala中使用specs2運行一些測試,但我有一些測試用例沒有執行的問題。斯卡拉specs2與上下文嵌套
這是舉例說明我的問題的最小例子。
BaseSpec.scala
package foo
import org.specs2.mutable._
trait BaseSpec extends Specification {
println("global init")
trait BeforeAfterScope extends BeforeAfter {
def before = println("before")
def after = println("after")
}
}
FooSpec.scala
package foo
import org.specs2.mutable._
class FooSpec extends BaseSpec {
"foo" should {
"run specs" in new BeforeAfterScope {
"should fail" in {
true must beFalse
}
}
}
}
我希望測試失敗,但它似乎案「發生故障」中的嵌套in
說法沒有得到執行。
如果我刪除嵌套的in
語句或,測試行爲正確,所以我想我錯過了一些東西,但我沒有設法在文檔中找到它。
[編輯]
在我的使用情況下,我目前填充在before
方法數據庫,並清除它在after
方法。但是,我希望能夠有幾個測試用例,而不需要在每個測試用例之間重新清理並填充數據庫。 什麼是正確的方法來做到這一點?
謝謝你的回答。我剛剛編輯了我的問題來解釋我正在嘗試做什麼。 –
我明白了!非常感謝您的幫助。 –
@Eric鏈接被破壞 –