主要区别
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、数据驱动的不同
标签:插件,断言,区别,unittest,pytest,测试用例,编写 From: https://www.cnblogs.com/chl666/p/18372295