我目前正在 Node.js 应用程序中对我的 DAL 运行单元测试。我希望能够使用虚拟数据库,通过在整个测试过程中发生的非正式设置/拆卸来测试我的 CRUD 操作。例如,通过插入进行设置,通过删除进行拆卸。
我正在测试数据库而不是模拟/假数据库,因为我更愿意针对数据库的半工作副本测试复杂的 SQL。
我遇到的问题是,在具有 AUTO_INCREMENT
-ing 的列上,我不能期望 ID 有任何一致性。通过重置 AUTO_INCREMENT
我可以避免这种情况,但随后我将进行大量的复制粘贴编码,在我的所有模型中插入一个方法。
有什么办法能让我只做一次就忘掉它?还是我完全没有找到更好的做法?
最佳答案
您可以使用 MySQL 的 TRUNCATE TABLE命令,它清空表并重置 AUTO_INCREMENT 列。实际上,它会删除表并重新创建它,这比删除所有行要快。
关于mysql - 重置 MySQL 自动增量作为 Node.js 单元测试中的拆卸步骤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8766493/