接口框架第二篇—unittest/pytest 有什么区别

1.用例编写方法

unittest

1)测试文件必须导入unittest包

2)测试类必须继承unittest.TestCase

3)测试类必须有unittest.main()方法

4)测试方法必须要以test_打头

pytest

1)测试文件名要以test_打头,或者_test结尾

2)测试类名字要以Test打头

3)测试方法名字test_打头

2.用例分类执行

unittest

默认执行全部用例,也可通过加载testsuit,执行部分用例

pytest

通过@pytest.mark方法来标记类和方法,pytest.main()加入参数-m来标记执行标记的类和方法

3.用例的前置和后置

unittest

提供了setUp/tearDown,只能针对所有用例

pytest

pytest的fixture可以任意自定义方法函数

4.参数化

unittest

依赖ddt

pytest

使用@pytest.mark.parametrize装饰器

5.断言

unittest

断言有很多格式,(assertEqual,assertIn,assertTrue,assertFalse)

pytest

pytest只有assert一个表达式

6.生成测试报告

unittest

unittest使用HTMLTestRunner

pytest

pytest-HTML,allure插件

7.失败重跑

unittest

无机制

pytest

pytest-rerunfailures插件可支持失败重跑

相关推荐
bjwuzh1 天前
使用pytest实现参数化后,控制台输出的日志是乱码
pytest
2025年一定要上岸2 天前
pytest框架 - 第二集 allure报告
pytest
头疼的程序员3 天前
allure生成测试报告(搭配Pytest、allure-pytest)
测试工具·pytest
文人sec4 天前
接口自动化测试设计思路--设计实战
python·https·单元测试·自动化·pytest
测试开发Kevin5 天前
从投入产出、效率、上手难易度等角度综合对比 pytest 和 unittest 框架
python·pytest
测试开发Kevin8 天前
以pytest_addoption 为例,讲解pytest框架中钩子函数的应用
python·pytest
川石教育13 天前
Pytest中的fixture装饰器详解
python自动化测试·pytest·pytest自动化测试框架·pytest测试框架·pytest单元测试框架
春风又。14 天前
接口自动化——参数化
python·测试工具·自动化·pytest
XTY0016 天前
mac电脑pytest生成测试报告
pytest
程序员的世界你不懂16 天前
pytest-前后置及fixture运用
pytest