我想用不同的输入文件设置我套件中的每个“应该”块。 之后,每个“ in”块都将使用其自己的应阻止文件。
我熟悉beforeAll和beforeEach,但是它们对我没有帮助,因为beforeAll在所有测试之前运行一次,而beforeEach在每个测试之前运行相同的代码,而我想为每个测试运行不同的代码。
我尝试在每个“应该”块内编写设置代码,但是所有“应该”设置代码都先在“ in”块之前运行。 以下是我尝试过的内容,也解释了我需要的内容:
"ParquetFormatParser with input file 1" should {
setupFile1()
"do something 1" in {
useFile1()
}
"do something 2" in {
useFile1()
} }
"ParquetFormatParser with input file 2" should {
setupFile2()
"do something 1" in {
useFile2()
}
"do something 2" in {
useFile2()
}
}
谢谢
答案 0 :(得分:0)
根据对beforeEach
的评论,不确定它是否对您有用,但是您可以使用固定装置来设置文件。这样,仅在需要时才设置文件,并且测试彼此独立。
trait FileOneFixture {
// setup file here
}
"ParquetFormatParser with input file 1" should {
"do something 1" in new FileOneFixture {
useFile1()
}
"do something 2" in new FileOneFixture {
useFile1()
}
}