测试面试题:pytest断言时,数据是符点范例,怎样断言? ...

打印 上一主题 下一主题

主题 656|帖子 656|积分 1968

在使用 Pytest 进行断言时,假如数据是浮点范例,可以使用以下方法进行断言:
一、使用pytest.approx
pytest.approx可以用来比力两个浮点数是否近似相称。例如:
  1. import pytest
  2. def test_float_assertion():
  3.     result = 3.14159
  4.     expected = 3.14
  5.     assert result == pytest.approx(expected, rel=1e-2)
复制代码
在这个例子中,pytest.approx(expected, rel=1e-2)表示允许结果与期望值之间有相对误差不超过1e-2(即 0.01)。
二、使用math.isclose结合pytest.raises进行断言
可以结合 Python 的内置函数math.isclose来判断两个浮点数是否接近,并使用pytest.raises来处理断言失败的环境。例如:
  1. import math
  2. import pytest
  3. def test_float_assertion_alternate():
  4.     result = 3.14159
  5.     expected = 3.14
  6.     with pytest.raises(AssertionError):
  7.         assert not math.isclose(result, expected, rel_tol=1e-2)
复制代码
这里假如结果与期望不接近,就会触发AssertionError,被pytest.raises捕获。
在进行浮点范例数据的断言时,要根据详细的精度要求和测试场景选择符合的断言方法。




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

半亩花草

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表