我有一个模型的夹具文件,其中有大约900个对象。当这些对象是从一个夹具文件中加载时,测试速度非常快。但是我不得不将该固定装置划分为每个对象一个固定装置原理。
现在,当我在测试中加载所有设备时, macOS 上的每个设置大约需要40秒,但是在 Linux 上并没有明显的不同加载时间。
我创建了一个CoreBaseTestCase
类,该类从目录中获取所有灯具并将其放入变量,然后将这些灯具名称提供给fixtures
变量。
class CoreBaseTestCase(TestCase):
many_fixtures = [os.listdir('path/to/fixtures')]
fixtures = \
['fixture1.json',
'fixture2.json'] + \
many_fixtures
缩短macOS上的夹具加载时间的解决方案是什么?
在 macOS 上的 setUp
花费45.77s
,在 Linux 上的setUp
花费7.4s
例如,测试test_something
在 macOS 上花费的时间比在 Linux 上花费的时间多6倍:
class SomeTestCase(TestCase):
fixtures = CoreBaseTestCase.fixtures + ['fixture3.json']
def test_something(self):
a = 1
self.assertEqual(a, 1)