python - 我如何修补方法并返回 pytest 中的传入参数?
问题描述
我对 pytest 模拟补丁有疑问。我不知道如何修补执行原始 SQL 的方法。
我有获取结果的通用方法。
def execute(query):
with connection.cursor() as cursor:
cursor.execute(query)
return dictfetchall(cursor)
如何在项目中使用:
def some_method():
query = "some raw SQL"
return execute(query)
在测试用例中,我想从执行器获取原始查询字符串并将其与一些示例进行比较
@pytest.mark.django_db
def test_publisher_intensity2():
publisher_id = 1
query = publisher_intensity2(
#
publisher_id,
date_from,
date_to,
)
assert query == "SOME SQL"
一般来说,我想在测试用例中从 executor 获取传入的参数
我正在使用 pytest 和 django_db
我怎么能这样做?
解决方案
推荐阅读
- selenium - Jenkins Chromium 浏览器和 ChromeDriver 版本即使在更新后也不匹配
- c# - 我正在制作井字游戏,但它只是让 X
- spring-boot - 如何使用 POST 端点为 Spring Boot 控制器编写单元测试用例
- ios - 将 uitextfield 3 中的光标向右移动
- mongodb - _id 字段在 mongodb 中真的是独一无二的吗?
- android - Google Api 错误:禁止:调用者没有权限 - 调用者没有权限
- c# - 保存更改的序列化值(Unity Editor C#)
- ubuntu - 如何使用 certbot 自动更新 TLS 证书?
- android - 显示天气信息的应用程序在模拟器上运行,而不是在实际手机上运行
- java - 无法通过 docker 创建 h2 表(sprint boot 应用程序)