我从Scala开始使用Play2,我发现我的测试总是执行多次。这里是例子:
trait IsolationContext extends Scope {
var value = 1
}
class TestSpec extends Specification {
"Specification 1" should {
"be tested here" >> new IsolationContext {
value += 1
println("TEST 1 : " + value)
value must be_>=(1)
}
"and also here" >> new IsolationContext{
value += 2
println("TEST 2 : " + value)
value must be_>=(2)
}
}
"Specification 2" should {
"be tested here" >> new IsolationContext {
value += 3
println("TEST 3 : " + value)
value must be_>=(3)
}
"and also here" >> new IsolationContext {
value += 4
println("TEST 4 : " + value)
value must be_>=(4)
}
}
}
当我在InteliJ中启动测试时,我在这里获得:
TEST 1 : 2 TEST 3 : 4 TEST 2 : 3 TEST 4 : 5 TEST 1 : 2 TEST 3 : 4 TEST 2 : 3 TEST 4 : 5 TEST 1 : 2 TEST 3 : 4 TEST 2 : 3 TEST 4 : 5 TEST 1 : 2 TEST 3 : 4 TEST 2 : 3 TEST 4 : 5
每次测试执行四次,有时两次。我必须只为执行测试指定一次顺序。 在Eclipse中,使用注释@RunWith(classOf [JUnitRunner]),一切都很完美。所以我认为这是IntelliJ的一个问题(bug?)。你能证实我,或者告诉我我哪里错了。
由于