Pytest - 断言判断(1) - 常用断言方法
常用断言方法
- 与unittest相比,pytest的断言使用的是python自带的
assert
关键字来进行断言。
- assert 关键字后面可以接一个表达式:
- 表达式的最终结果为
True
,那么断言通过,用例执行成功; - 表达式的最终结果为
False
,那么断言失败,用例执行失败;
- 表达式的最终结果为
比较大小和相等
assert
可以使用直接使用运算符来比较==
(相等)、!=
(不相等)<
(小于)、>
(大于)<=
(小于等于)、>=
(大于等于)
test_py.py
import pytest a = 123 b = 456 class Test_py: def test_a(self): assert a == b def test_b(self): assert a != b def test_c(self): assert a < b def test_d(self): assert a > b def test_e(self): assert a <= b def test_f(self): assert a >= b if __name__ == "__main__": pytest.main(['-q', 'test_py.py']) # test_b,test_c,test_e 测试成功 # test_a,test_d,test_f 测试失败
包含不包含
assert
使用in
和not in
来判断包含的关系。
test_py.py
import pytest a = "123" class Test_py: def test_a(self): assert "1" in a def test_b(self): assert "1" not in a if __name__ == "__main__": pytest.main(['-q', 'test_py.py']) # test_a 测试成功 # test_b 测试失败
True 或 False
assert
断言真假不需要任何辅助符号:assert
直接判断对象是否为 True ;assert not
用于判断是否为 False。
test_py.py
import pytest a = True class Test_py: def test_a(self): assert a def test_b(self): assert not a if __name__ == "__main__": pytest.main(['-q', 'test_py.py']) # test_a 测试成功 # test_b 测试失败
断言异常信息提示
当测试断言失败后,需要输出指定的异常信息,在 assert
断言后,增加异常信息即可
test_py.py
import pytest def test_a(): assert False, "这是一条异常信息" if __name__ == "__main__": pytest.main(['-q', 'test_py.py'])
分类:
Pytest
标签:
Python-自动化测试
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现