我正在考虑一个应用程序的测试策略,它使用Firebase作为其数据存储。虽然端到端测试向实际后端发出请求是可以的,但是能够对不需要使用Firebase的应用程序逻辑进行单元测试是很好的。
我一直在搜索web,寻找一种使用本地JSON文件来模拟javascript Firebase服务的方法,但是没有发现任何东西。像这样的东西存在吗?如果没有,我会写下来把它贴在github上..。
发布于 2014-01-11 22:25:24
更新
有关封装的TDD与在单元测试中使用模拟的详细探索,请参见这个要旨和这个职位。
原始邮政
很难正确地模拟Firebase服务,就像模拟最复杂的数据存储一样。从嘲弄MySQL或嘲弄MongoDB的角度来考虑这一点。
假设您的目标是使本地环境脱机工作,一个快速解决方案可能是使用本地实例。您可以获取firebase-debug.js,将其保存在本地,并调用set(/* data */)将其初始化为脱机操作。
否则,最好的方法是将所有Firebase活动封装到一个类或库中。然后您可以模拟这个库,而不是您的Firebase事件。对于准单元测试(这些测试在技术上不是单元测试,因为它们依赖于外部服务)库本身,返回到本地脱机Firebase实例或设置一个dev数据库,并在那里复制生产数据(或一些种子数据)。
https://stackoverflow.com/questions/21066762
复制相似问题