建议关注收藏!
- 框架
测试文档专题
linux/vim/ssh
pymysql
pytest
unittest
移动端测试
接口测试
性能测试
UI自动化=web自动化+移动自动化
CI/CD
目录
- pytest or unittest
- 工程结构
- 参数化测试
- 灵活的前置与后置处理(测试夹具 Fixture)
- 错误重试与失败处理
- 异常测试与 pytest.raises 的使用
- 集成 CI/CD
- pytest详细说明
- 功能测试、集成测试、回归测试
pytest or unittest
- unittest:Python 自带单元测试框架,设计上模仿了Java 的
JUnit框架 。使用unittest编写单元测试时,开发者继承各种测试类(如unittest.TestCase),并调用各种如self.assertEqual()、self.assertTrue()等特定的断言方法。产生大量冗长且重复的模板代码(Boilerplate Code) - pytest:解决原生
unittest库繁琐的继承与断言代码痛点。 功能强大、灵活、简洁和易用。 - 原生 Assert 机制与断言重写原理
与unittest需要调用self.assertXxx()方法不同,pytest直接允许开发者使用 Python 原生的assert关键字来进行断言判断。
在标准的 Python 运行环境中,如果assert随后的表达式判断结果为False,Python 解释器只会简单地抛出一个AssertionError异常,而不会附带任何关于变量当前值或上下文的详细信息,这导致调试时很难快速定位问题根源。pytest解决这一问题的底层技术被称为“断言重写”(Assert