pytest数据驱动的缺点

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytest数据驱动的缺点相关的知识,希望对你有一定的参考价值。

参考技术A pytest是一个很好用的自动化测试工具,但是对于数据驱动模式比较死板。

比如:

测试用例写在yaml文件中(一个yaml文件会有多条用例,且读取后的数据结构为list),然后测试用例需要动态加载其他变量,这个时候如果用pytest的数据驱动@pytest.mark.parametrize('test',[1,2,3]),parametrize会在一开始就加载了所有用例。如果用例B的body需要用例A的响应参数,这个时候就会加载为None,导致你的测试用例执行失败。

如果你想用for循环做数据驱动,又会掉入另一个坑。yaml文件中有多条用例,for循环执行后,使用allure.dynamic.title(casename),会被覆盖,最后报告中只有最后一条用例title。

以上是关于pytest数据驱动的缺点的主要内容,如果未能解决你的问题,请参考以下文章

pytest-Mark数据驱动

(二十八)pytest的数据驱动

pytest数据参数化和数据驱动yaml的简单使用

Pytest进阶之参数化

pytest测试框架-数据驱动 yaml/excel/csv/json

pytest接口自动化测试结合单元测试框架pytest+数据驱动模型+allure