javascript - 使用本地 JSON 模拟 Firebase 进行测试?

标签 javascript unit-testing firebase

<分区>

我正在考虑针对将 Firebase 用作其数据存储区的应用程序的测试策略。虽然端到端测试可以向实际后端发出请求,但能够对不必到 Firebase 的应用程序逻辑进行单元测试就更好了。

我一直在网上搜索一种方法来使用类似于本地 JSON 文件的东西来模拟 javascript Firebase 服务,但没有找到任何东西。这样的东西存在吗?如果没有,我会写它并发布在github上......

最佳答案

更新

参见 this gistthis post详细探索封装的 TDD 与使用模拟进行单元测试。

原帖

正确模拟 Firebase 服务非常困难,就像模拟最复杂的数据存储一样。从模拟 MySQL 或 mocking MongoDB 的 Angular 来考虑这一点.

假设您的目标是让本地环境离线工作,一个快速的解决方案可能是使用本地实例。你可以捕获 firebase-debug.js , 保存到本地,调用set(/* data */) 初始化离线操作。

否则,您最好的方法是将所有 Firebase 事件封装到一个类或库中。然后您可以模拟该库而不是您的 Firebase 事件。对于准单元测试(这些在技术上不是单元测试,因为它们依赖于外部服务)库本身,回退到本地离线 Firebase 实例或设置开发数据库并复制您的生产数据(或一些种子数据)那里。

关于javascript - 使用本地 JSON 模拟 Firebase 进行测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21066762/

相关文章:

javascript - 在javascript中的div之间旋转

相机的 javascript 操纵杆

c# - 使用 NUnit 在不同的应用程序域中运行单元测试

javascript - 为什么 Firebase javascript 身份验证不适用于 ie11?

javascript - 访问 JSON 中的属性(对象)

javascript - jQuery 一页导航 : highlight bug

visual-studio - 如何弄清楚为什么 ReSharper 在运行之前没有重建单元测试项目?

c# - 模拟 ApplicationUser 并提供角色

firebase - 如果用户不发送,我可以创建日期属性吗?

ios - IOS 10上的Firebase无法从真实设备上的数据库加载数据