lmr*_*391 3 python django postgresql heroku pytest
有人知道如何针对现有(例如生产)数据库使用pytest-django运行Django测试吗?
我知道通常这不是单元测试应该做的,但就我而言,我是在Heroku上运行测试。默认情况下,Django创建一个新的测试数据库,但是,这在Heroku上是不可能的。
我找到了一个无需pytest-django(python manage.py test)即可使用的解决方案:https : //gist.github.com/gregsadetsky/5018173,
但据我了解,pytest-django并未利用Django中定义的测试运行器设置。
如果有人对在Heroku上使用pytest-django运行Django测试的另一种方法(例如,通过自动创建测试数据库的方式),我也对该解决方案感到满意。
遵循有关如何链接到现有数据库的文档:
使用现有的外部数据库进行测试
本示例说明如何连接到现有数据库并将其用于测试。
这个例子很简单,您只需要禁用所有pytest-django和Django的测试数据库创建,并指向现有数据库即可。这可以通过简单地实现无操作django_db_setup固定装置来实现。放入
conftest.py:Run Code Online (Sandbox Code Playgroud)import pytest @pytest.fixture(scope='session') def django_db_setup(): settings.DATABASES['default'] = { 'ENGINE': 'django.db.backends.mysql', 'HOST': 'db.example.com', 'NAME': 'external_db', }
| 归档时间: |
|
| 查看次数: |
1463 次 |
| 最近记录: |