Openshift python manage.py测试无法运行

时间:2017-01-05 05:02:24

标签: sqlite python-3.x unit-testing openshift django-1.8

我在django文档中遵循了7部分教程。 Django项目是使用Openshift快速入门创建的

为什么我需要输入

    python manage.py makemigrations
    python manage.py migrate

每个单元测试用例执行之前

    python manage.py test

每当我将测试用例添加到我的应用程序并将所有更改推送到openshift时,我需要使用SSH连接重新键入迁移到openshift 在我可以进行测试之前 否则我看到“没有这样的表myapp_question”错误消息。

使用python manage.py dbshel​​l我看到数据库已经使用了适当的表,因为我已经进行了所有迁移。

文件说明, Separate, blank databases are created for the tests. 为什么openshift需要在测试之前键入migrate,而不需要更改模型以及新数据库会发生什么。

我从

实例化每个测试用例
    from django.test import TestCase

并且这个导入应该提供开箱即用的新数据库和空表。

我应该在openshift挂钩中放置一些东西还是修改settings.py。

我可以运行测试,但我不明白为什么我不能只输入

      manage.py test

并探索结果

1 个答案:

答案 0 :(得分:0)

使用git进行openshift的每次推送都会在没有django数据库迁移和模式的情况下创建新的运行时。所有数据库历史记录都保存在DATA子目录中,可以使用ssh进行访问。

django测试要求迁移历史记录为测试目的重新创建数据库,使用内存数据库。

仅创建运行迁移并迁移模式以进行测试。

如果我错了,请纠正我