如果想了解 Pytest 建议至少需要对 unittest 等类似 xunit 的框架有一定认识之后再来看。否则面对 pytest 这种灵活性非常高的框架就会难以理解。
通过了解 Unittest 框架后,至少对一个测试框架应该具备哪些特性有一些了解。那么再学习其他的灵活度、扩展性更好的框架后就会更清晰一些。
我将从如下几部分为大家介绍 Pytest 框架。
- 如何编写 Pytest 测试用例
- Pytest 运行及命令行介绍
- 测试标记
- Pytest 测试固件
- Pytest 常用及趣味插件(包括测试报告、并发运行等)
- Pytest 如何实现各种自动化测试
- Pytest 与持续集成及其他工具的结合
- Pytest 内置固件、插件编写(不一定介绍😜)
如果你需要使用,请先
pip install pytest
一般按照我的习惯,我不会一开始就拿一个复杂的案例来介绍显得高大上。
我依然会用加法函数这种一眼就能看明白的函数来进行测试,以便大家在学习的时候不用去理解待测的内容。
有时候待测案例过于复杂,读者需要花很多时间去消化和理解待测案例,这让学习一个测试框架的难度翻倍。
这也是大家在学习的时候常见的困扰,看不懂待测案例就更看不懂框架,有时候本来看懂了框架,结果又被案例给绕晕了。
我相信这不是作者们的本意,但是选取过于简单的案例会显得太 low。为了让大家看懂呢,我选择 low。
另外推荐一本书《Pytest 测试实战》([美] Brian Okken)
。这本书关于 Pytest 的介绍非常详细。
书籍一般都是选取作者认为有价值的内容,当然我写文章也是出于从自动化测试的角度来讲 Pytest 框架而不是作为单元测试框架,所以也会做很多的取舍。
如果你想学习完整的 Pytest 框架并理解其源码,请参考官方文档。
网友评论