我的 iOS 项目有五个方案:Local Development、Integration、QA、Demo 和 Production。每个方案都使用不同的配置来控制网络轮询频率、API 端点、分析等。
同样,我们有五个对应的目标:本地开发、集成、QA、演示和生产。每个目标都有几个用户定义的构建设置,其中包含 API 密钥、计时数值等。
我们的应用程序Info.plist
文件使用应用程序变量,例如${SOME_ENDPOINT_URL}
在相应的用户定义的构建设置中绘制。
要检索变量,我执行以下操作:
[[[NSBundle mainBundle] infoDictionary] valueForKey:@"Some Endpoint URL"]
这将对应于用户定义的构建设置,如下所示:
"Some Endpoint URL" = ${SOME_ENDPOINT_URL}
我现在正在研究如何适当地配置项目以执行单元和逻辑测试。
要构建测试以确定环境是否配置正确,我不确定最佳实践是什么。
- 为每个环境构建五个额外的特定于测试的目标是否正确?
- 还是更好地覆盖每个方案的测试组件的“运行操作的参数”设置,并提供类似参数的东西来指定我们正在查看的方案?
- 是否有任何现有的参考资料可以为具有多个环境的 iOS 项目配置单元和逻辑测试?这个项目的复杂性似乎超出了大多数文档的范围。