首页 > 解决方案 > 为什么 TestInstance(PER_CLASS) 解决静态 @BeforeAll

问题描述

我已阅读文档,无需解释,我们如何在 BeforeAll 方法中访问非静态字段等。我正在寻找答案 - 为什么 TestInstance(PER_CLASS) 在方法签名 BeforeAll 方法中解决静态问题?换句话说 - 它在内部是如何工作的?官方文档中没有解释,只是说

@BeforeAll 方法必须具有 void 返回类型,不能是私有的,并且默认情况下必须是静态的。因此,@BeforeAll 方法在 @Nested 测试类中不受支持或作为接口默认方法,除非测试类使用 @TestInstance(Lifecycle.PER_CLASS) 注释

仅此而已。不清楚,不明显。假设,我不明白一些事情。

标签: unit-testingjunit

解决方案


推荐阅读