object Test extends Specification {
var test = 1
println("test: " + test)
"Tests" should {
"A" in {
println("test in A: " + test)
test = 2
1 mustEqual 1
}
"B" in {
println("test in B: " + test)
test = 3
1 mustEqual 1
}
}
println("test end: " + test)
}
当我进行测试时,我得到:
测试:1 测试结束:1 测试:1 测试结束:1 在B中进行测试:1 在A:1中进行测试
我想利用这个变量,有可能吗?谢谢!
答案 0 :(得分:1)
奇怪行为的原因是specs2同时运行规范。
这是其中一项功能,您可以在此处阅读http://etorreborre.github.io/specs2/(查看功能标题)。
您可以通过在规范中添加sequential
调用来按顺序运行它。
object Test extends Specification {
var test = 1
sequential // <- this will make the examples sequentially
println("test: " + test)
"Tests" should {
"A" in {
println("test in A: " + test)
test = 2
1 mustEqual 1
}
"B" in {
println("test in B: " + test)
test = 3
1 mustEqual 1
}
}
println("test end: " + test)
}