
python+pytest
盒子danbo
某公司资深软件测试工程师,主攻自动化测试和测试管理
展开
-
python系列之初探Pytest(7)-预处理(混合setup和fixture)
遇到的问题: 1、测试过程中并不是每一个测试方法都需要执行预处理?如何按需使用? 2、在整个测试过程中只要执行一遍怎么处理? 3、需要获取预处理后的返回值怎么处理? 4、Fixture方法只能做前置处理,后置处理怎么办? 混合使用setup和fixture功能实现 setup/deardown: 缺点:只能在单py文件内生效,没有全局设置,而且不支持单独对某一个方法配置。不支持返回值操作。 优点:有后置处理操作。单py文件内...原创 2020-09-11 17:10:59 · 870 阅读 · 1 评论 -
python系列之初探Pytest(6)-预处理(fixture)
接着上一篇所述,本文介绍如何用fixture做预处理。 fixture装饰器功能可以说是pytest的灵魂所在,他的功能是非常强大的。 Fixture可以对方法或者函数进行修饰,以实现定制化的需求。 如何使用: 先来看一个简单的示例: import pytest@pytest.fixture()def Mysetup(): print("Mybefore------------")def testA1(Mysetup): print("testA1--------")...原创 2020-09-11 17:10:20 · 314 阅读 · 0 评论 -
python系列之初探Pytest(5)-预处理(setup、teardown)
在做接口测试时,经常需要对接口的数据或者签名进行预处理。比如在做接口时,需要先登录获得Token信息等。那用pytest可以有哪些方法可以做预处理呢?这就是本文要介绍的:setup/teardown和fixture。 setup/teardown 预处理 可以设置为模块级,类级,方法级,函数级。 模块级: setup_module()和teardown_module()表示模块级别的,会在模块中的类和函数执行前执行,只执行一次。 类级别...原创 2020-09-11 17:09:19 · 653 阅读 · 0 评论 -
python系列之初探Pytest(4)-参数传递
在编写测试用例时,经常需要给测试用例传递参数,Pytest可以通过多种形式给测试用例传递参数: 1、使用pytest.mark.parametrize 2、使用Pytest.fixture pytest.mark.parametrize pytest.mark.parametrize(“参数名”,参数值) 同时传递多个参数时,每一个参数用逗号分隔,也可以采取多次声明叠加参数的形式。 同时传递多组值时每一组值用括号包裹,用逗号分隔每一组值: @pytest....原创 2020-09-11 17:08:23 · 4069 阅读 · 0 评论 -
python系列之初探Pytest(3)-测试报告
测试报告的展现形式,对于后期自动化回归测试分析还是很有用的。unittest有HTMLTestRunner插件,同样的pytest也有第三方插件pytest-html。 安装: pipinstallpytest-html 使用 pytest模块名--html=测试报告名称(默认当前路径,也可以指定路径) 这里要注意是“--” 示例: pytesttest_pytestDemo.py-mL1-s--html=test.html 测试结果展示:...原创 2020-09-11 17:06:22 · 296 阅读 · 0 评论 -
python系列之初探Pytest(2)-运行方式
Pytest的运行方式有多种,可以支持单个测试用例执行、分组执行、文件执行、目录执行等,同时还执行多线程执行。 单个用例执行: pytest模块名.py::[测试类名]::[测试方法名] 示例: pytesttest_pytestDemo.py::TestDemoAAAA::test_DemoA1-s 执行测试类里面的所有用例: pytest模块名.py::[测试类名] 示例: pytest test_pytestDemo.py::...原创 2020-09-11 17:04:52 · 407 阅读 · 0 评论 -
python系列之初探Pytest(1)-安装与使用
之前一直用unittest做测试框架,后来在一次面试中被鄙视,觉得unittest太低端了,Pytest才高大上。那就来了解下Pytest! 首先来看下官方文档对pytest最新版本的介绍: 更详细的错误结果输出 自动发现测试用例和测试模块 可以模块化管理或者参数化化常用的测试资源 支持unittest和测试套 需要python3.5以上或pypy3以上版本 丰富的插件管理,超过315个外部插件和丰富的社区。 ...原创 2020-09-11 17:03:41 · 262 阅读 · 0 评论