如何在Firebase数据库中分离测试和生产数据?

时间:2016-06-24 19:50:58

标签: ios unit-testing firebase firebase-realtime-database

每个Firebase项目仅包含一个数据JSON树。最佳实践要求测试应在与生产数据不同的数据库上运行。实现这一目标的最简单方法是什么?

我考虑过的一些事情:

  • 在同一个项目中使用多个子树进行测试和生产 - 这看起来很混乱,测试和生产数据很难分开。
  • 设置多个Firebase项目进行测试和制作 - 这似乎是this question与Android相关的最佳答案。但我不确定如何在Xcode中设置多个GoogleService-Info.plist文件,并根据我的应用程序的配置在它们之间切换。

1 个答案:

答案 0 :(得分:12)

创建多个Firebase项目。每个项目都有自己的plist文件。

FIRApp有自定义配置选项。下载测试/调试项目的plist,重命名并加载如下。

#if DEBUG
    NSString *filePath = [[NSBundle mainBundle] pathForResource:@"GoogleService-Info-dev" ofType:@"plist"];
    FIROptions *options = [[FIROptions alloc] initWithContentsOfFile:filePath];
    [FIRApp configureWithOptions:options];
#else
    [FIRApp configure];
#endif

可以找到更详细的解释here