终于决定还是放弃rspec的transaction了

本文讨论了在测试过程中遇到的cleanup问题,并介绍了使用database_cleaner解决该问题的经验。文章提到,尽管这种方法减缓了测试速度,但仍然可以接受。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

反复遇到不能正确cleanup的问题,今天看到这篇blog,虽然有点旧,但是确实就是我的现状,不明白rspec为什么改不好,还是决定用database_cleaner了。

博客主要内容摘抄

 

This will fail. It will fail because that let statement lives outside of the transactions, so it doesn't get cleaned up, and that old stale database object sits around polluting the database.

That means let() blocks, subject() blocks, it() blocks, its() blocks and specify() blocks are all exempt from cleanup.

 

使用以后的感受,果然象传说的一样,用例执行速度确实慢了很多,不过还能忍受

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值