pytest 与 unittest 的区别
1、表达用例:
- unittest 通过定义一个类,继承unittest.TestCase
- pytest 直接定义类 / 函数
2、断言的表达:
- unittest:self.assertxxx()
- pytest:assert 表达式(结果为True-断言成功,结果为False-断言失败)
3、收集用例:
- unittest:TestLoader类+TestSuite类,discover收集用例
- pytest:自动收集用例
4、fixture:前置后置
- unittest:setUp&tearDown 继承至setUpClass&tearDownClass
- pytest:function(用例)→ class(测试类)→ Module(.py文件) → Session(会话)
5、插件
- unittest:无
- pytest:插件数量700+。如html插件、allure报告