使用内存中的 fake/db 测试 Firebase 数据库
Posted
技术标签:
【中文标题】使用内存中的 fake/db 测试 Firebase 数据库【英文标题】:Testing Firebase Database with an in-memory fake/db 【发布时间】:2018-10-31 00:05:48 【问题描述】:Firebase 数据库是否有任何用于测试 android 客户端逻辑和集成的内存实现?我见过 node.js 的假货,但在 java 中找不到任何东西。我不是在寻找仅适用于基本单元测试的简单模拟。
【问题讨论】:
为什么投反对票? 【参考方案1】:您必须重构您的应用程序,并实施一种架构方法。比如像MVP、MVVM、Clean等。主要是层。在这种情况下,您可以使用模拟对象相互独立地测试这些层。
在 Internet 上,您会找到很多关于此主题的文档, 例如Essential Guide For Designing Your Android App Architecture, Why to choose MVVM over MVP — Android Architecture 和许多其他人。
【讨论】:
这没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方留下评论。 - From Review @zeh 据我所知,没有其他办法。好吧,或者在谷歌找份工作 这不是一个真正的答案。你的架构方法不会给我我正在寻找的东西。是的,理想情况下,谷歌应该提供一个假货来测试自己。你的评论比你的回答更能回答我的问题。 @adarsh 认为今天您需要 Firebase,明天您可能需要一个本地 sqlite 数据库进行缓存,而后天 - Firestore 而不是 Firebase。应用架构方法,您可以测试所有这些。是的,学习需要时间。 @tim4dev 先生,我很清楚,我不是在寻找单元测试,正如我在问题本身中提到的那样。这是集成测试。以上是关于使用内存中的 fake/db 测试 Firebase 数据库的主要内容,如果未能解决你的问题,请参考以下文章
对于测试套件,用内存中的 HSQLDB 替换 MYSQL 不起作用
内存数据库中的 H2:使用 JDBC 设置时区? Java 单元测试
在 Laravel PHPUnit 测试中使用内存中的 SQLite
使用 Liquibase 为 Spring Boot 应用程序中的单元测试初始化内存 H2