为什么django test--keep db可以使用postgres数据库,但不能使用默认的sqlite3
我正在两种数据库设置中测试Django(v1.11.4)应用程序: 1) 在docker容器中运行的postgres数据库 或 2) SQLITE3AS(默认数据库) 当使用为什么django test--keep db可以使用postgres数据库,但不能使用默认的sqlite3,django,postgresql,testing,sqlite,Django,Postgresql,Testing,Sqlite,我正在两种数据库设置中测试Django(v1.11.4)应用程序: 1) 在docker容器中运行的postgres数据库 或 2) SQLITE3AS(默认数据库) 当使用--keepdb选项运行测试时,我观察到这两种设置的不同行为:对于postgres--keepdb按预期工作(没有数据库创建,运行测试很快),但是对于sqlite3数据库--keepdb似乎不工作(对于每次运行测试,都会创建数据库)。 是否可以让--keepdb使用sqlite3?如果是这样,您知道什么设置可能会影响上述行为
--keepdb
选项运行测试时,我观察到这两种设置的不同行为:对于postgres--keepdb
按预期工作(没有数据库创建,运行测试很快),但是对于sqlite3数据库--keepdb
似乎不工作(对于每次运行测试,都会创建数据库)。
是否可以让--keepdb
使用sqlite3?如果是这样,您知道什么设置可能会影响上述行为吗?默认情况下。这意味着测试数据库不是持久的。通过指定测试名称,可以在数据库设置中覆盖此行为:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite',
'NAME': 'db.sqlite3',
'TEST': {
'NAME': 'testdb.sqlite3',
},
},
}
默认情况下。这意味着测试数据库不是持久的。通过指定测试名称,可以在数据库设置中覆盖此行为:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite',
'NAME': 'db.sqlite3',
'TEST': {
'NAME': 'testdb.sqlite3',
},
},
}