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

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

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

断言有很多格式assertEqualassertInassertTrueassertFalse

pytest

pytest只有assert一个表达式

6.生成测试报告

unittest

unittest使用HTMLTestRunner

pytest

pytest-HTMLallure插件

7.失败重跑

unittest

无机制

pytest

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

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6