我想测试是否删除deinit
视图控制器中的所有键值观察器。
在测试类中,我定义了以下方法来启动视图控制器生命周期
func startLifecycle() { _ = viewController.view }
在我的测试方法中,我试图deinit
通过简单地将nil分配给我的视图控制器实例来调用
testViewController = nil XCTAssert for stuff...
但是deinit
执行测试时不会调用。我在VC的代码中没有看到明显的保留周期,更何况是在应用程序中运行代码而不是在测试环境中运行代码时,deinit
因此似乎不会将视图控制器保留在内存中。
测试时释放视图控制器的正确方法是什么?