微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

@BeforeClass (@BeforeAll) 和 @AfterClass (@AfterAll) 方法名称的约定是什么?

如何解决@BeforeClass (@BeforeAll) 和 @AfterClass (@AfterAll) 方法名称的约定是什么?

从历史上看,JUnit 中有一个流行的约定,例如:

  • @Before/@BeforeEach 方法setUp()
  • @After/@AfterEach 方法tearDown()

@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()。至于如何称呼它们,相同的“偏好规则”适用于这些方法。随意称呼他们!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。