我是编程新手,我必须使用数据库创建一个简单的应用程序。我正在使用 Firebase 实时数据库,但我不知道如何进行单元测试。
如何模拟数据库并推送一些假数据进行测试?
你能举个例子吗?
最佳答案
选项 1:如果您只是使用实时数据库,您可以做的一件事是在测试开始时调用 goOffline()。这将阻止所有网络 Activity ,但由于延迟补偿,本地事件仍将触发。这有局限性(例如,不强制执行安全规则,并且交易无法进行),但可能会根据您的用例而起作用。
选项 2:查看 https://github.com/azell/quasar-firebase
选项 3:或者对于与模拟不同的另一种方法,您可以尝试环境“沙箱”。
您可以为每个环境创建不同的根节点,而不是将所有内容存储在同一根节点下。
例如:
{
DEV : { data : {'all_your_dev_data_lives_here'}}
PRODUCTION : { data : {'all_your_production_data_lives_here'}
}
在您的 Android 应用程序中,您将构建一个配置标志,让您可以在“DEV”和“Production”之间切换。如果标志为“DEV”,它只会写入 Firebase 中的“DEV”根节点,而不会影响 Production。
关于java - 模拟 firebase android 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59073785/