【发布时间】:2015-01-28 13:28:53
【问题描述】:
问题 1
在我真正开始自己编写东西之前,是否存在将 CLLocationManager 包装到模拟框架中的现有框架(obj-c 或 swift)?
问题 2
制作模拟位置管理器的最佳方法是什么?
-
创建一个围绕 CLLocationManager 的类,对该类的任何调用都将返回测试数据或实际的 CLLocation 数据,具体取决于我们运行的“模式”
-
扩展 CLLocationManager 并覆盖所有我想“搞砸”的调用
-
有没有我没想到的第三个选项?
我主要想知道假设没有任何可用的东西,每种方法的优点/缺点是什么
[编辑]
虽然 XCode 中有一个模拟位置功能,但它并不能完全满足我的需求。如果我没记错的话,它不做标题,它们必须被插值。此外,我最终可能会修改这个类以从飞行模拟器驱动 CLLocationManager
【问题讨论】:
-
为什么不在 Xcode 或/和 iOS 模拟器中使用“模拟位置”功能?
-
我需要比模拟位置功能提供的更多功能(例如无法模拟标题)
-
必须用 Swift 编写吗? github上有几个CL模拟器如this one
-
“模拟位置”不适用于测试。您是如何找到解决方案的?
标签: objective-c unit-testing swift mocking core-location