【发布时间】:2011-03-06 23:39:23
【问题描述】:
我的 Django 单元测试需要很长时间才能运行,所以我正在寻找加快速度的方法。我正在考虑安装SSD,但我知道这也有缺点。当然,我可以用我的代码做一些事情,但我正在寻找结构修复。即使运行单个测试也很慢,因为每次都需要重建/南迁移数据库。所以这是我的想法...
既然我知道测试数据库总是很小,为什么我不能将系统配置为始终将整个测试数据库保存在 RAM 中?永远不要触摸磁盘。如何在 Django 中配置它?我宁愿继续使用MySQL,因为这是我在生产中使用的,但如果SQLite 3 或其他东西让这变得容易,我会这样做。
SQLite 或 MySQL 是否可以选择完全在内存中运行?应该可以配置 RAM 磁盘,然后配置测试数据库以将其数据存储在那里,但我不确定如何告诉 Django / MySQL 为某个数据库使用不同的数据目录,特别是因为它一直被擦除并重新创建每次运行。 (我在 Mac FWIW 上。)
【问题讨论】:
标签: python mysql django unit-testing