随笔分类 - pytest框架
摘要:pytest集成报告 pytest-html生成报告 pytest是借助pytest-html插件生成测试测试报告, 不用自己编写生成报告代码。 安装:pip install pytest-html 执行方法:pytest --html=./reports/report.html 测试代码: imp
阅读全文
摘要:本文只介绍pytest-ordering、pytest-rerunfailures、pytest-xdist三种插件,报告方面的插件会另起篇幅进行介绍。 顺序执行:pytest-ordering 安装:pip install pytest-ordering 使用方式:在方法上加入下面装饰器 标记于被
阅读全文
摘要:fixtures参数化 fixture函数可以进行参数化的调用,这种情况下,相关测试集会被多次调用,即依赖该fixture的测试的集合。测试函数通常无需关注这种重复测试 . fixture的参数化有助于为那些可以以多种方式配置的组件编写详尽的功能测试 . 扩展之前的示例,我们标记fixture来创建
阅读全文
摘要:scope:在类/模块/整个测试中共享fixture实例 当fixture需要访问网络时,因为依赖于网络状况,通常是一个非常耗时的动作 。 扩展下上面的示例,我们可以将scope="module"参数添加到@pytest.fixture中,这样每个测试模块就只会调用一次smtp_connection
阅读全文
摘要:测试fixture的目的是提供一个测试的基线,在此基线基础上,可以更可靠的进行重复测试。Pytest的 fixture相对于传统的xUnit的setup/teardown函数做了显著的改进: 测试fixture有明确的名称,通过在函数/模块/类或者整个项目中激活来使用 。 测试fixture是模块化
阅读全文
摘要:在软件测试中,经常遇到同一个用例需要输入多组不同的参数组合,进行功能覆盖测试,在自动化测试中,我们把这种叫做参数化,在pytest中使用装饰器就能完成参数化. @pytest.mark.parametrize(argnames, argvalues) # 参数: # argnames:以逗号分隔的字
阅读全文
摘要:pytest.mark.skip可以用于标记某些不想执行的测试用例。 创建test_04.py文件,内容如下 # filename:test_04.py import pytest class TestDemo01(): @pytest.mark.skip(reason='我要跳过') def te
阅读全文
摘要:对自动化测试框架来说,setup和teardown至关重要。 模块级别 模块级别的初始化、清除分别在整个模块的测试用例执行前后执行,并且 只会执行1次 。 创建test_03.py,定义 setup_module 和teardown_module 全局函数 # filename:test_03.py
阅读全文
摘要:失败后停止 使用下面的参数可以让测试在第1(N)次测试失败后停止: pytest ‐x # 第一次测试失败后停止测试 pytest ‐‐maxfail=2 # 第2次测试失败后停止测试 修改文件如下 # filename:test_02.py import pytest class TestDemo
阅读全文
摘要:pytest介绍 pytest是python的一种单元测试框架,与python自带的unittest测试框架类似,但是比unittest框架使用起来更简洁,效率更高 非常容易上手,入门简单,文档丰富,文档中有很多实例可以参考 能够支持简单的单元测试和复杂的功能测试 支持参数化 执行测试过程中可以将某
阅读全文