我的套件目前具有以下结构:
外套房
SuiteSetUp
内部套件1
SuiteSetUp
测试1
测试2
测试3
SuiteTearDown
内部套件2
SuiteSetUp
测试1
测试2
测试3
SuiteTearDown
我想让OuterSuite.SuiteSetUp加载一些基本测试数据的数据库。然后,每个InnerSuite1.SuiteSetUp和InnerSuite2.SuiteSetUp都会对其各自的测试组稍作修改测试数据。 (并将其还原为相应SuiteTearDown中的起始值。)
但是,正如我发现的那样,“只能有一个!” SuiteSetUp。您将如何获得所需的行为?
最佳答案
我们利用Hudson为特定目的运行特定套件来解决了类似的问题。
它的工作原理如下:
我们有一个BootStrap页面,我们可以运行该页面来准备数据库。这作为独立的Hudson工作运行。该作业将准备数据库,然后对其进行备份。
然后,当我们运行套件时,我们会在每个套件之前还原数据库。
还原数据库后,运行套件。由于我们现在不支持数据库回滚,因此我们分别运行主要套件以强制清理数据库。
这种方法并不完美,但可以让我们更好地管理数据库。
关于testing - 如何设置允许多个“SuiteSetUp”的FitNesse套件层次结构?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10600483/