Sequelize.js 继续事务测试

Sequelize.js 继续事务测试,sequelize.js,Sequelize.js,是否可以将每个sequelize测试包装在事务中,并在每个测试结束时回滚?使用sequelize实现此功能的推荐方法是什么 如果测试中的代码也打开了一个事务(嵌套事务),它也会工作吗 谢谢我不相信Sequelize支持嵌套事务 听起来您试图在测试之间保持隔离,以便一个测试中的更改不会影响另一个测试。我的团队通过在每次声明之前的中用夹具数据填充测试数据库,并在每次声明之后的中截断受影响的表来实现这一点。使用此方法,测试运行得相当快 为了保持测试高效运行,您可以缩小清理步骤的重点,并将每个descr

是否可以将每个sequelize测试包装在事务中,并在每个测试结束时回滚?使用sequelize实现此功能的推荐方法是什么

如果测试中的代码也打开了一个事务(嵌套事务),它也会工作吗


谢谢

我不相信Sequelize支持嵌套事务

听起来您试图在测试之间保持隔离,以便一个测试中的更改不会影响另一个测试。我的团队通过在每次声明之前的
中用夹具数据填充测试数据库,并在每次
声明之后的
中截断受影响的表来实现这一点。使用此方法,测试运行得相当快


为了保持测试高效运行,您可以缩小清理步骤的重点,并将每个
descriple
块配置为仅截断受每个测试块影响的少数表。例如,如果您正在测试
用户
模型,请在每个
之后添加一个
,该文件只会截断
用户
表。

我们也在使用该方法。将测试包装到事务中的原因是为了防止我们截断所有表来清理每个测试中的数据库。由于我们的测试套件相当大,并且我们已经确定截断是每个测试中花费时间最多的部分。也许您已经在这样做了,但是您可以尝试缩小清理步骤的重点,并将每个
descripe
块配置为仅截断受每个测试块影响的少数表。例如,如果您正在测试
用户
模型,请在每个
之后添加一个
,该文件只会截断
用户
表。John,您应该将此添加到您的答案中,因为我相信这是user1990009需要的关键。谢谢。最近的续集版本有什么现代的答案吗?