繁体   English   中英

没有数据库设置或拆卸的Rails单元测试?

[英]Rails unit tests without db setup or teardown?

我想编写一些不对数据库进行任何更改的单元测试。

我有一个Rails 2.3.11应用程序。 此应用程序具有一个SQLite数据库作为其主数据库。 从许多方面来说,这是一个常规的Rails应用程序。

该应用程序与众不同的原因在于,它还建立了与SQL Server数据库的连接。 我有一些模型是抽象类,它们使用SQL Server数据库。 我具有before_savebefore_destroy回调,以防止对SQL Server数据库进行任何更改。 同样,连接到SQL Server的用户凭据应该是只读的。

我想编写对SQL Server数据库中已经存在的数据进行断言的单元测试。 但是我不想设置或拆除SQL Server数据库。

恐怕只能看看会发生什么。 我想在单元测试中有一个设置,以防止Rails尝试设置或拆除SQL Server数据库。 这可能吗? 我该怎么做?

谢谢!

设置/删除仅影响应用程序数据库(SQLite,听起来像),而不影响其他外部数据库连接。

另外,您应该使测试环境与生产环境完全分开。 因此,如果您还使用测试SQLServer DB(并且应该在其中包含测试数据,而不是生产数据),那么即使发生最坏的情况,也应该没问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM