junit - 在 kotlin 中释放变量

标签 junit kotlin

在 kotlin 中,为了编写测试,我在 setUp 阶段的每个测试之前创建了一个 guice 注入(inject)器,然后我尝试在 tearDown 阶段释放它:

class MyTestClass {
    ....
    var injector: Injector? = null
    ...
    @Before
    fun setUp() {
        ...
        injector = Guice.createInjector(modules)
        ...
    }
    @After
    fun tearDown() {
        ...
        injector = null
    }

    @Test
    fun myFirstTest() {
        myInstance = injector?.getInstance(Key.get(MyClass::class.java))
        // use myInstance here
        ...
    }
    ...
}

我的问题是,在 Kotlin 的土地上,是否有必要进行这种重新分配?如果有必要,最好的方法是什么?

最佳答案

不,这不是必需的,甚至不是释放。你所做的只是重新绑定(bind)injector为空。旧值仍在内存中,没有引用。垃圾收集器在认为合适时清理内存。

关于junit - 在 kotlin 中释放变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46453824/

相关文章:

kotlin - 为什么 Moshi 不使用我的自定义适配器?

Android:如何从 Kotlin 调用 ndk 函数?

java - Robotium:如何在继续之前等待加载完成?

java - 如何使用 Junit 模拟 Builder

android - Unresolved reference : viewModels()

java - 使 Gson 为外部字段确定的接口(interface)类型工作

android - 房间 DB : java. lang.reflect.InvocationTargetException

java - CompletableFuture 可用性和单元测试

java - LinkedHashMap Java 8 的 JUnit 顺序

java - 使用私有(private)访问说明符访问具有参数的私有(private)方法