3

setup() 和 teardown() 与构造函数和析构函数做同样的事情。如果没有,它们有何不同?如果是,那么为什么我们不能使用构造函数和析构函数来代替它们。

4

1 回答 1

3

SetUp 和 tearDown 不能被构造函数和析构函数替换,因为它们在内部受到断言宏抛出的异常的保护。因此,您可以在 setUp 或 tearDown 中添加断言宏,但不能在析构函数中执行此操作,并且在构造函数中会出现一些问题。

然后 cppunit 受到 Junit 的启发,它实现了相同的概念。然后有可能用另一种 setUp/tearDown 方法替换夹具内的 setUp 和 tearDown 。

于 2012-04-16T15:36:10.240 回答