Python 自动化测试框架unittest与pytest的区别

引言

前面一篇文章Python单元测试框架介绍已经介绍了python单元测试框架,大家平时经常使用的是unittest,因为它比较基础,并且可以进行二次开发,如果你的开发水平很高,集成开发自动化测试平台也是可以的。而这篇文章主要讲unittest与pytest的区别,pytest相对unittest而言,代码简洁,使用便捷灵活,并且插件很丰富。

Unittest vs Pytest

主要从用例编写规则、用例的前置和后置、参数化、断言、用例执行、失败重运行和报告这几个方面比较unittest和pytest的区别:

用例编写规则

Python 自动化测试框架unittest与pytest的区别_第1张图片

用例前置与后置条件

Python 自动化测试框架unittest与pytest的区别_第2张图片

断言

Python 自动化测试框架unittest与pytest的区别_第3张图片

测试报告

失败重跑机制

参数化

用例分类执行

如果不好看,可以看下面表格:

Python 自动化测试框架unittest与pytest的区别_第4张图片

总体来说,unittest用例格式复杂,兼容性无,插件少,二次开发方便。pytest更加方便快捷,用例格式简单,可以执行unittest风格的测试用例,无须修改unittest用例的任何代码,有较好的兼容性。pytest插件丰富,比如flask插件,可用于用例出错重跑,还有xdist插件,可用于设备并行执行,效率更高。

实例演示

讲了七大区别,总要演示一下具体实例,用事实说话。

前后置区别

这里抽用例前置与后置的区别来讲,先看unittest的前后置使用:

你可能感兴趣的:(python,pytest,单元测试)