pytest和unittest的几个区别

主要区别
1、安装需求:
  pytest:作为第三方单元测试库,需要额外安装。
  unittest:是Python标准库的一部分,无需额外安装。
2、用例编写规则:
  pytest:编写规则较为简单,兼容性好,可以执行unittest风格的测试用例,无需修改unittest用例的任何代码。
  unittest:编写规则较为复杂,需要按照固定的格式编写,如测试类需要以Test开头,测试方法需要以test_开头。
3、自动发现和执行:
  pytest:支持自动发现项目中的测试文件并执行,无需手动添加到测试套件中。
  unittest:需要手动编写测试套件,并手动执行每个测试函数。


4、断言语句:
  pytest:在断言方面提供了更丰富的选项和功能,支持各种比较运算符、断言方法和自定义断言。
  unittest:断言语句相对简单,提供了一些基本的断言方法,如assertEqual、assertTrue等。

5、插件支持:
  pytest:拥有丰富的插件生态系统,可以扩展其功能,如生成测试报告、集成代码覆盖率工具等。
  unittest:不支持插件系统,功能相对固定。
6、兼容性:
  pytest:支持运行unittest编写的测试用例,但unittest不支持运行pytest编写的测试用例

 


7、前后置区别
  pytest:只要有conftest文件,在测试用例中传参后就会自动执行,unittest必须在用例中都写

8、数据驱动的不同

 

posted @ 2024-08-21 18:16  非洲我最白  阅读(1880)  评论(0)    收藏  举报