问题描述
从历史上看,JUnit 中有一个流行的约定,例如:
@BeforeClass
/@BeforeAll
和 @AfterClass
/@Afterall
方法名称怎么样?是否有任何采用的命名约定?
我在这方面找不到任何可靠的资源。
解决方法
setUp()
和 tearDown()
仅作为约定存在,因为它们是 JUnit 3 的 TestCase
中方法的硬编码名称。因此,在 JUnit 4 之前,这些方法必须准确命名。
从 JUnit 4 开始,开发人员可以随意命名设置和拆卸方法。这同样适用于 JUnit Jupiter。
有些人更喜欢继续将它们命名为 setUp()
和 tearDown()
。有些人更喜欢在注释后简单地命名它们,例如 before()
/beforeEach()
和 after()
/afterEach()
。有些人喜欢给它们命名一些有意义的东西,比如 prepareMock()
和 verifyMockInvocations()
。
所以,归根结底只是个人喜好问题。
JUnit 3 没有类级别的生命周期回调方法。因此,没有相应的旧约定,例如 setUp()
和 tearDown()
。至于如何称呼它们,相同的“偏好规则”适用于这些方法。随意称呼他们!