Fitnesse:如何初始化/拆卸测试套件(而不是单个测试)

3

我有一个基本的问题:

使用JUnit时,在测试套件中(保存测试用例的类)可以使用@BeforeClass和@AfterClass声明套件级别的初始化和清除行为。这些被注释的方法在套件开始之前和套件完成所有测试之后分别被调用。这与套件内部使用@Before和@After注释的方法不同,后者在启动每个测试之前和完成每个测试之后分别被调用。

我想在Fitnesse中实现相同的设置。我找到了如何在每个测试之前和之后执行内容(创建SetUp页面和TearDown页面,并将它们放入套件中,它们将在套件中的每个测试之前和之后分别被调用)。这相当于JUnit中的@Before和@After。但是我无法理解如何声明套件级别的初始化和清除逻辑(类似于JUnit中的@BeforeClass和@AfterClass)。请问是否可以实现此功能,如果可以,请告诉我如何实现?

我尝试创建一个父套件,并在其中添加SetUp和TearDown页面。然后在父套件内添加多个子套件,每个子套件都包含实际的测试(每个测试都具有自己的SetUp和TearDown)。我希望通过这种方式,父套件的SetUp和TearDown页面将在每个子套件之前和之后被调用,而子套件的SetUp和TearDown页面将在套件中的每个测试之前和之后分别被调用。但是这种方法不起作用,因为子套件的SetUp/TearDown覆盖了父套件的。

1个回答

6

1
谢谢,这真的很有帮助。顺便说一句,我知道我问了一个看起来很愚蠢的问题,因为在Fitnesse文档页面上似乎已经有了一个明显的答案,但是我确实在那个网站上搜索了半天,没有找到它。我一直在翻阅像这个页面(http://fitnesse.org/FitNesse.SuiteAcceptanceTests.SuiteResponderTests.SuiteTestResponders.SuiteSetUpAndTearDown)这样的页面,它并没有提到实际的套件级别的初始化/关闭。再次感谢! - Shivan Dragon
1
您所引用的页面实际上是FitNesse自己的验收测试的一部分,而不是用户文档。理论上,验收测试对于了解FitNesse的功能很有用,但实际上我同意它们可能会让新手感到困惑。 - Andy

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接