遗留数据库多表关联的|遗留数据库多表关联的 unit test
手上的项目是一个遗留系统。要在尽量保持原有数据库结构的情况下,用rails改写。
其中有些表是多表关联。而且在数据库中也存在数据丢失的情况。
就是说一个表里面的 foreign key 的值可能在另外那个表里面已经被删除了。
例如在 Rails 里: A has_one B, A和B 都有很多attributes.
如果
B.A 是nil
那么 B.A.attributes就会报错。nil.attributes
如果是 C has_many A的话,就更麻烦了。
B.A.C.attributes 就更可能出错了。
现在我采取的办法是用begin/rescue。
可是我想在做test的时候,把这些隐藏的问题找出来。
一可以修复数据库,二可以全面找出问题的所在。
但是在rails unit test.
fixtures引入的是yml文件。
如何在unit test 时引入全部数据?
如何做多表关联的测试?
在controller,model 和view 里面有没有比begin/rescue更好的方法?
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- 数据库设计与优化
- 数据库总结语句
- MySql数据库备份与恢复
- 数据库|SQL行转列方式优化查询性能实践
- MySQL数据库的基本操作
- springboot整合数据库连接池-->druid
- Android|Android sqlite3数据库入门系列
- Python3|Python3 MySQL 数据库连接