python - 针对测试数据库运行迁移

标签 python django migration

我不希望在每个测试轮之前运行迁移,这就是为什么我使用 --reusedb --nomigrations 运行测试

我仍然需要设置数据库一次。为此,我这样做:

python manage.py migrate

如何告诉 migrate 在“测试”模式下运行,以便使用正确的数据库(使用 test_)?

最佳答案

Django 测试运行程序为测试设置单独的数据库,该数据库源自 settings.py 中的数据库。如果您单独设置测试数据库,测试运行程序将使用它。

如果您仍需要在测试数据库中运行一些迁移,可以使用 --database 选项运行 migrate 命令。

python manage.py migrate --数据库测试

您可以在测试用例中指定目标数据库:

class TestMyViews(TransactionTestCase):
    databases = {'default', 'other'}

    def test_index_page_view(self):
        call_some_test_code()

migrate command documentation

testcase with database documentation

关于python - 针对测试数据库运行迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56966819/

相关文章:

python - 无效的 block 标记 'else'。您是否忘记注册或加载此标签?

django - 当通过管理站点修改 Django CharField 时发送电子邮件通知

mysql - 在 MySQL 中等同于 MS SQL 作业?

python - matplotlib 中图例中的多个标题

python - 在 numpy 数组中传播最大值

python - 如何使用 django 1.7.3/postgres 迁移在数据库中设置默认列值?

asp.net - 将 Microsoft 应用程序从 Windows 2003 Server 迁移到 Windows 2012 Server

python - Django:仅为 api 子应用程序返回 json

python - DRF : Cannot POST or create a new object through admin interface

python - 更改 Django 在测试期间迁移应用程序的顺序