Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.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
为什么django SimpleTestCase创建测试数据库_Django_Database_Performance_Unit Testing - Fatal编程技术网

为什么django SimpleTestCase创建测试数据库

为什么django SimpleTestCase创建测试数据库,django,database,performance,unit-testing,Django,Database,Performance,Unit Testing,正如问题和中所解释的,在单元测试中使用SimpleTestCase时,django不应该创建测试数据库(这需要很长时间) 在我的一个名为“搜索”的应用程序中,我从SimpleTestCase继承了一些单元测试。这是tests.py Inside search应用程序: class TokenizerTestCase(SimpleTestCase): def test_one(self): self.assertItemsEqual(1, 1) 当我调用python ma

正如问题和中所解释的,在单元测试中使用SimpleTestCase时,django不应该创建测试数据库(这需要很长时间)

在我的一个名为“搜索”的应用程序中,我从SimpleTestCase继承了一些单元测试。这是tests.py Inside search应用程序:

class TokenizerTestCase(SimpleTestCase):
    def test_one(self):
        self.assertItemsEqual(1, 1)

当我调用
python manage.py test search.tests.TokenizerTestCase
时,构建默认数据库花费的时间太长。有人知道它为什么要为测试创建数据库吗?

默认情况下
SimpleTestCase
创建一个测试数据库。您可以为自己的功能扩展该类。如果您不想创建一个y数据库我们自己的每个设置都会设置您自己的测试环境来扩展类

重写_pre_setup和_post_teardown方法。有关更多信息,请阅读
TransactionTestCase
的源代码,以了解它如何创建测试数据库结构


阅读源代码

启动看起来像什么?Django在运行测试时显示什么文本?@SimeonVisser在它写的第一行:为别名“default”创建测试数据库……然后它打印一些关于迁移的警告。