基于表达式resu的输出警告

2024-04-26 14:38:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试图根据表达式的结果在pytest设置中输出警告。我实际上是在尝试镜像assert语句,而不停止代码,同时不必手动格式化警告消息来模拟每个表达式。你知道吗

例如,我想这样做:

test_variable = 5
assert test_variable == 10

# Output:
AssertionError: assert 5 == 10

更简单的版本是:

test_variable = 5
if test_variable != 10:
    warnings.warn(f"{test_variable} != 10") # Manually format the output.

# Output:
UserWarning: 5 != 10

我在Python的warnings模块中找不到任何关于如何输出基于错误表达式的警告的内容。你知道吗

关于如何简化警告输出,使我不必为我想在测试中执行的每个检查设置格式,有什么想法吗?你知道吗


Tags: 代码test消息警告output镜像pytest表达式
1条回答
网友
1楼 · 发布于 2024-04-26 14:38:50

pytest使用python的断言。 您可以在assert语句之后添加一个字符串来生成警告。你知道吗

assert my_var == 10 , "Value of my_var: {} is not equal to 10".format(my_var)

如果我的变量是5,它会打印这个:

Value of my_var: 5 is not equal to 10

相关问题 更多 >