接口框架第二篇—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插件可支持失败重跑

相关推荐
我的xiaodoujiao1 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 22--数据驱动--参数化处理 Json 文件
python·学习·测试工具·pytest
胜天半月子2 天前
Python自动化测试 | 快速认识并了解pytest的基本使用
服务器·python·pytest
北珣.6 天前
自动化框架pytest基础
自动化·pytest
程序员杰哥7 天前
Pytest之收集用例规则与运行指定用例
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·pytest
学习3人组7 天前
Python + requests + pytest + allure + Jenkins 构建完整的接口自动化测试框架
python·jenkins·pytest
shao91851610 天前
Gradio全解14——使用Gradio构建MCP的服务器与客户端(4)——Python包命令:uv与uvx实战
pytest·uv·1024程序员节·npx·uvx·uv pip·ruff
我的xiaodoujiao12 天前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 20--PO(POM) 设计模式和用例撰写
python·学习·测试工具·设计模式·pytest
sky0Lan12 天前
一个类似 pytest 的 html 报告
android·html·pytest
一半烟火以谋生13 天前
Python + Pytest + Allure 自动化测试报告教程
开发语言·python·pytest
一半烟火以谋生14 天前
pytest conftest.py 使用教程
pytest