【发布时间】:2011-11-01 17:30:27
【问题描述】:
我想编写一些不对数据库进行任何更改的单元测试。
我有一个 Rails 2.3.11 应用程序。这个应用程序有一个 SQLite 数据库作为它的主数据库。在许多方面,这是一个普通的 Rails 应用程序。
这款应用的独特之处在于它还建立了与 SQL Server 数据库的连接。我有一些模型是抽象类,它们使用 SQL Server 数据库。我有before_save 和before_destroy 回调来防止对SQL Server 数据库进行任何更改。此外,连接到 SQL Server 的用户凭据应该是只读的。
我想编写对 SQL Server 数据库中已经存在的数据进行断言的单元测试。但我不想设置或拆除 SQL Server 数据库。
我害怕只是看看会发生什么。我想在单元测试中设置一个设置,以防止 Rails 尝试设置或拆除 SQL Server 数据库。这可能吗?我该怎么做?
谢谢!
【问题讨论】:
-
顺便说一下,我想在测试环境中使用与在开发环境中相同的 SQL Server 数据库连接。
标签: ruby-on-rails unit-testing tdd abstract-class readonly