我正在使用 jUnit 来管理访问数据库的应用程序的集成测试。因为设置测试数据是一项耗时的操作,所以我一直在@BeforeClass
方法中这样做,每个测试类只执行一次(与@Before
方法相反,每个测试方法运行一次)。
现在我想为数据层的配置尝试一些不同的排列,在每个不同的配置上运行我的所有测试。这似乎是对Parameterized
测试运行器的自然使用。问题是,Parameterized
向类构造函数提供参数,并且该@BeforeClass
方法是抽象的并且在类构造函数之前被调用。
几个问题,
是否为每个参数排列Parameterized
调用该@BeforeClass
方法,还是只调用一次?
如果该@BeforeClass
方法被重复调用,是否有某种方法可以从它内部访问参数值?
如果这些都不是,人们建议作为解决这个问题的最佳替代方法是什么?