Как я могу отделить данные тестирования и производства в моей базе данных Firebase?

Каждый проект Firebase включает только одно дерево JSON для данных. Лучшие практики диктуют, что тесты должны выполняться в отдельной базе данных из производственных данных. Каков самый простой способ достичь этого?

Некоторые вещи, которые я рассматривал:

  • Использование нескольких поддеревьев в рамках одного и того же проекта для тестирования и производства. Это кажется беспорядочным, и данные тестирования и производства вряд ли разделены.
  • Настройка нескольких проектов Firebase для тестирования и производства. Это похоже на лучший ответ от этого вопроса, связанный с Android. Но я не уверен, как настроить несколько файлов GoogleService-Info.plist в Xcode и переключаться между ними на основе конфигурации приложения.

Ответы

Ответ 1

Создайте несколько проектов 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

Более подробное объяснение можно найти здесь