测试应该覆盖正常输入、边界情况和错误输入。异常信息需要说明发生了什么,而不是简单返回失败。
def divide(a: float, b: float) -> float:
if b == 0:
raise ValueError("b cannot be zero")
return a / b
def test_divide():
assert divide(10, 2) == 5- 单元测试:验证单个函数或类。
- 集成测试:验证多个模块能否正确协作。
- 端到端测试:从用户入口验证完整流程。