如何解决通过pytest
当我在View
类中的方法由pytest
执行时,日志记录语句在控制台上不产生任何输出。那是预期的行为还是我错过了什么?
这是视图:
import logging
from django.views import View
logger = logging.getLogger(__name__)
class FancyWebhook(View):
def post(self,request,*args,**kwargs):
logger.info("DUMMY logging")
print("DUMMY printing")
return HttpResponse(status=200)
configs/settings/test.py
中的日志记录配置:
# ...
LOGGING = {
"version": 1,"disable_existing_loggers": False,"handlers": {
"console": {"class": "logging.StreamHandler"},},"loggers": {
"django": {
"handlers": ["console"],"level": os.getenv("DJANGO_LOG_LEVEL","INFO"),}
测试方法:
import pytest
@pytest.mark.django_db
def test_fancy_webook_empty_payload_fails(client):
print("calling client.post()...")
response = client.post('/pricing/fancywebhook',{},content_type='application/json')
assert response.status_code == 403
通过pytest --ds=config.settings.test
运行测试仅将assert 301 == 403
的错误打印到控制台,但不会显示“ DUMMY日志记录”或“ DUMMY打印”语句。
我肯定想念明显的东西,不是吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。