Ruby on rails 事务与截断数据库清理器

Ruby on rails 事务与截断数据库清理器,ruby-on-rails,database,transactions,cucumber,gem,Ruby On Rails,Database,Transactions,Cucumber,Gem,最近我的一个黄瓜场景出现了问题。当功能运行时,我的测试数据库中的某些条目正在消失。我通过换线解决了这个问题 DatabaseCleaner.strategy = :transaction 到 我不知道为什么会有帮助。数据库的网页上有一个表格,但它并没有真正说明这两个术语的含义。理解这两个概念之间的区别会有很大的帮助。用一种非常简单的方式说:截断从数据库中删除所有数据,事务回滚运行场景所做的所有更改。截断从数据库结构中删除数据,事务主要回滚数据库操作,这是最快的策略。最后一个是删除。删除删除数据

最近我的一个黄瓜场景出现了问题。当功能运行时,我的测试数据库中的某些条目正在消失。我通过换线解决了这个问题

DatabaseCleaner.strategy = :transaction


我不知道为什么会有帮助。数据库的网页上有一个表格,但它并没有真正说明这两个术语的含义。理解这两个概念之间的区别会有很大的帮助。

用一种非常简单的方式说:截断从数据库中删除所有数据,事务回滚运行场景所做的所有更改。

截断从数据库结构中删除数据,事务主要回滚数据库操作,这是最快的策略。最后一个是删除。删除删除数据并删除数据库的结构,这是最慢但最安全的。
您也可以查看

这正是我所需要的。谢谢
DatabaseCleaner.strategy = :truncation