首页 > 解决方案 > 我可以模拟通常在 docker 上运行的数据库调用吗

问题描述

我是新来的。我开始在一家公司,其唯一的 Rails 开发人员刚刚离开。他们要求我编写单元测试。问题是应用程序在 docker 上运行。我想在本地计算机上使用 factory_bot 模拟 db,而不在 docker 上运行。当我运行测试时,它给出了找不到表的错误。这是正常的,因为本地没有任何数据库工作。我想模拟该数据库调用而不在本地创建任何数据库。可能吗

ActiveRecord::StatementInvalid: 找不到表

标签: ruby-on-railsrspecfactory-bot

解决方案


根据最佳实践,您应该有一个本地数据库来运行测试。如果你有本地数据库服务器,设置它来运行测试非常简单:rails db:test:prepare


推荐阅读