我正在使用纯python unittest编写一些测试代码。我是这样做的:
# retrieve the demo object to get the initial attributes
demo = DemoModel.objects.get(id='1')
init_name = demo.name
# use the requests module to send a request to change attributes of demo
requests.post(...)
# retrieve the demo object again to see if it's changed
demo = DemoModel.objects.get(id='1')
assertNotEqual(init_name, demo.name)
原来演示对象没有改变!我搜索和检查了很长时间,但是Djangoget
查询中没有缓存,mysql也没有。你知道吗
你说过你是在“纯单元测试”中使用请求模块完成的。如果你不小心这样做,很可能你的请求失败,你没有检查你的职位的状态码。(例如,如果您不提供Django的CSRF值,它可能会失败,尽管它也可能因为权限检查而失败,等等)。你知道吗
你知道邮件是否成功返回吗?你知道吗
似乎不是Django而是Mysql事务问题。见How do I force Django to ignore any caches and reload data?
相关问题 更多 >
编程相关推荐