ios – UITests:没有叫deinit

前端之家收集整理的这篇文章主要介绍了ios – UITests:没有叫deinit前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
为什么当我在 Xcode中测试我的控制器时一切都很好,但是没有调用deinit方法.这是对的吗?

虽然应用程序正常工作,但它很好,但不适用于UITest目标.

对于复杂的结构,模拟器会一遍又一遍地分配更多的对象,并且……根本不需要解除分配.因此,在较慢的机器上,应用程序通常会在没有任何理由的情况下退出……并且无法完成测试.

使用Xcode 8,iOS 10,macOS Sierra.

解决方法

如果没有看到测试代码的样本,我无法明确地回答你的问题,但是,你的情况让我怀疑几件事情.

基本上发生的事情是应用程序正在为您运行的每个测试创建新进程.代码内部某处的内存泄漏将是第一个需要调查的问题.如果你正在泄漏内存,那么启动一系列进程的测试框架可能会导致崩溃,并允许该问题在正常运行期间在雷达下飞行.

此外,除非您通过测试类中的拆卸功能显式地取消初始化控制器,否则通常在测试结束时才会终止该过程.如果您想测试重新初始化,我建议在测试中明确触发拆除以测试您的内存分配行为.此外,Xcode Analyze功能可能对您有用.

如果您可以发布测试代码的样本,这将是一个很好的帮助,我将相应地编辑我的答案.

猜你在找的iOS相关文章