我想使用postgres localhost数据库中的数据(已经加载的数据)测试我的视图.我正在使用pyx和pytest-django.
我的问题:
如何设置/连接到本地数据库以获取所有数据模型架构和数据本身?或者也许最好使用factory_boy?或者从.sql脚本加载整个数据(如果是,如何)?
我的测试示例:
def test_foo_view(custom_client_login):
response = custom_client_login.get('/foo/bar/123/')
assert response.status_code == 200
assert 'Transaction no. 123' in response.content
但是获得状态代码200而不是获得404,这表明测试数据库中没有数据.但是当我在runserver上午餐并转到那个视图(‘localhost:8000 / foo / bar / 123 /’)时,我将获得状态200和带有一些数据的html网页.
请帮忙!
我正在使用:
> Django == 1.7.11
> pytest == 3.0.6
> pytest-django == 3.1.2
> tox == 2.6.0
最佳答案
刚刚找到了办法!我认为它更简单!无需编写任何自定义TestRunners等.
答案是在第5章中的pytest-django docs – >示例 – >使用只读数据库.
查看其他示例,在这种情况下非常方便.
谢谢!