Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 加载Django装置一次?_Python_Django_Django Tests - Fatal编程技术网

Python 加载Django装置一次?

Python 加载Django装置一次?,python,django,django-tests,Python,Django,Django Tests,我知道以前有人问过这个问题,但我想看看是否有更新的解决方案。是否有办法在设置中加载我的所有装置,并在所有测试完成后刷新它们 现在,我正在加载我的固定装置,就像这样 来自django.test的导入测试用例 从django.core.management导入call_命令 类GlobalSetup(测试用例): def设置(自): #负载夹具 call_命令('loaddata','test_cfst.json',详细度=0) call_命令('loaddata','test_lmt.json',

我知道以前有人问过这个问题,但我想看看是否有更新的解决方案。是否有办法在
设置中加载我的所有装置,并在所有测试完成后刷新它们

现在,我正在加载我的固定装置,就像这样

来自django.test的
导入测试用例
从django.core.management导入call_命令
类GlobalSetup(测试用例):
def设置(自):
#负载夹具
call_命令('loaddata','test_cfst.json',详细度=0)
call_命令('loaddata','test_lmt.json',详细度=0)
call_命令('loaddata','test_qt.json',详细度=0)
类基本测试(全局设置):
固定装置=[
“test_cfst.json”,
“test_lmt.json”,
“test_qt.json”
]
def设置(自):
super(BaseTest,self).setUp()
def测试_底座(自身):
#一些随机测试

对于较新版本的django,有没有一种方法或更好的方法可以做到这一点?

我不确定您是否知道,但您只需按如下方式加载装置:

来自


因此,您不需要像当前示例中那样,使用
call_命令编写
GlobalSetup
,这会导致两次加载装置。由于该方法已在setUpClass中调用(请参阅)

您的链接问题是,自Django 1.8.Ah以来,每个测试类都会加载一次夹具,因此我仔细阅读了1.8更新,但我浏览了该部分。我的错是没有三次检查。谢谢你指出。我不是,这确实有帮助!我一直在努力寻找关于测试的教程,以便更好地学习它,我也在学习,但它有点过时了。我很感激你的回答!不过,它的年龄比它大了近五年。。这就是为什么对于初学者,您应该遵循文档。我不知道django保存的任何此类文件。在某个时候,它也会告诉你未来的弃用。为了升级django,您应该逐个升级现有的项目django版本,并解决兼容性问题!我在看一些文档,但总是想看看是否能找到一些可以参考的示例。谢谢你的建议!
from django.test import TestCase
from myapp.models import Animal

class AnimalTestCase(TestCase):
    fixtures = ['mammals.json', 'birds']

    def setUp(self):
        # Test definitions as before.
        call_setup_methods()

    def test_fluffy_animals(self):
        # A test that uses the fixtures.
        call_some_test_code()