0at*_*man 8 python testing django performance fixtures
我的Django测试运行得非常慢,但这不是测试的错.
目前,整个过程需要14秒,但只有0.1秒正在运行测试.前几秒是创建表和索引,其余的是应用项目的很多fixtures.
处理这个问题的最佳方法是什么?我认为有一种方法可以指定fixtures在每个测试中加载哪个,但我需要大部分测试来进行大多数测试......
我认为可行的解决方案是,如果测试在每次运行后没有删除表,那么就不需要在每次运行测试时创建和填充数据库.大多数测试甚至都没有写入数据库.
优化fixtureDjango测试的加载部分的最佳方法是什么?谢谢!
(我正在使用nose,但除此之外只是简单的Django和sqlite)
编辑:我应该提到我正在使用内存中的sqlite数据库.我正在寻找的 - 特别是 - 是对测试的夹具加载部分的优化.
“但我需要他们中的大多数人来做大多数测试”......
对此感到抱歉,但是为了加快速度,您必须进行一些思考。
“我认为有一种方法可以指定在每个测试中加载哪些装置”
这是一件读起来令人不安的事情。你最近检查过你的测试吗?
具体来说,您的测试会列出固定装置。您需要最小化该列表。