我想重写ScalaTest特征BeforeAndAfterEach来为所有测试实现一次这些东西。最后我把它编译出来,但我不明白为什么。覆盖特征和自我类型
trait MySetup extends BeforeAndAfterEach {
this : org.scalatest.BeforeAndAfterEach with org.scalatest.Suite =>
var service: String = _
abstract override def beforeEach(): Unit = {
service = "apa"
super.beforeEach()
}
abstract override def afterEach(): Unit = {
service = ""
}
}
是得到它的工作的事情是行:
this : org.scalatest.BeforeAndAfterEach with org.scalatest.Suite =>
我发现它在BeforeAndAfterEach开始执行并复制它。
它做什么,为什么我需要它?
更新:
这是一个更简单的版本。
trait MySetup extends FlatSpec with BeforeAndAfterEach {
var service: String = _
override def beforeEach {
service = "apa"
super.beforeEach
}
override def afterEach {
service = ""
super.afterEach
}
}
谢谢! ScalaTest链接正是我所需要的。 –