第二篇

首页新闻博问专区闪存云上钜惠我的博客我的园子账号设置退出登录注册登录久曲健博客园首页新随笔联系订阅管理随笔 - 474  文章 - 0  评论 - 238Pytest学习(六) - conftest.py结合接口自动化的举例使用一、conftest.py作用可以理解成存放fixture的配置文件二、conftest.py配置fixture注意事项pytest会默认读取conftest.py里面的所有fixtureconftest.py 文件名称是固定的,不能改动conftest.py只对同一个package下的所有测试用例生效不同目录可以有自己的conftest.py,一个项目中可以有多个conftest.py测试用例文件中不需要手动import conftest.py,pytest会自动查找三、实例场景应用多个测试用例脚本都需要先进行登录,再进行业务操作,按照封装的特性,肯定需要抽离登录这部分,那么我们现在就使用conftest.py来实现。工程目录结构如下:
1、最顶层conftest即项目根目录下的conftest文件,一般写全局的fixture,在接口自动化中抽离登录使用,示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 21:26

@Author : longrong.lang

@FileName: conftest.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

import pytest

@pytest.fixture(scope=‘session’)
def login():
print(u’调用登录接口’)
username=“zhangsan”
token=“ZXF3ZTEyMTIzMTIxYWUxcWUxYGAyYDJgYDIx”
yield username, token
print("====登录成功,返回用户名,token!")

@pytest.fixture(autouse=True)
def get_userinfo(login):
username, token = login
print(f"== 每个用例都调用的外层fixture:打印用户名username:{username} 和token: {token} ==")
说明:此处必须要配合yield使用,也就是teardown(可以理解为afterclass)2、同级目录下的第一个用例示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 21:56

@Author : longrong.lang

@FileName: test_getUserInfo.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

def test_getUserInfo(login):
username,token=login
print(f"== 每个用例都调用的外层fixture:打印用户名\nusername:{username} 和token: {token} ==")
运行结果:
3、test_query目录通过conftest.py,配置一些针对query的测试用例独有的fixture,比如:查询商品,示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 22:19

@Author : longrong.lang

@FileName: conftest.py.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

import pytest

@pytest.fixture(scope=‘module’)
def query(login):
print("====调用查询接口")
shopName=“AJ男鞋”
size=44
colour=“红色”
yield shopName, size,colour
print(f"调用查询接口成功,返回查询商品信息")
对应测试用例,示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 22:27

@Author : longrong.lang

@FileName: test_case1.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

def test_query_shop(query):
shopName,size,colour=query
print(f"\n返回查询商品信息:商品名称: {shopName} 颜色:{colour} 鞋号: {size}")
运行结果:
4、test_loginout目录没有__init__.py文件也没有conftest.py文件,对应测试用例,示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 22:40

@Author : longrong.lang

@FileName: test_nofixture.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

def test_no_fixture(login):
print("\n没有__init__测试用例,登录后,我就想退出登录了", login)
运行结果:
5、test_addcart目录通过conftest.py,配置一些针对addcart的测试用例独有的fixture,比如:加入购物车,示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 22:50

@Author : longrong.lang

@FileName: conftest.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

import pytest

@pytest.fixture(scope=‘function’)
def addcart(login):
print(“从详情页登录,将商品加入购物车”)
price=“2099元”
yield price
print(‘添加购物车成功,累计计算中’)
对应测试用例,示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 22:56

@Author : longrong.lang

@FileName: test_case.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

def test_addCart(addcart):
price=addcart
print(f"\n返回商品价格: {price} ")
运行结果:
四、运行目录下所有用例示例代码如下:# -- coding: utf-8 --

@Time : 2020/11/11 23:17

@Author : longrong.lang

@FileName: run.py

@Software: PyCharm

@Cnblogs :https://www.cnblogs.com/longronglang

import pytest

if name == ‘main’:
pytest.main(["-q", “…/python-practice/”])

运行结果:

__EOF__本文作者:久曲建的测试窝
本文链接:https://www.cnblogs.com/longronglang/p/13961685.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
优秀不够,你是否无可替代软件测试交流QQ群:721256703,期待你的加入!!欢迎关注我的微信公众号:软件测试君
分类: pytest好文要顶 关注我 收藏该文 久曲健
关注 - 20
粉丝 - 402 +加关注 0 0

« 上一篇: 阶梯场景设计:找出性能瓶颈,做负载测试 posted @ 2020-11-11 23:31  久曲健  阅读(25)  评论(0)  编辑  收藏

刷新评论刷新页面返回顶部

发表评论 【福利】注册AWS账号,立享12个月免费套餐 编辑预览 7693b08a-a8f6-49f3-f45a-08d88556cc23 Markdown 帮助自动补全 不改了退出 订阅评论 [Ctrl+Enter快捷键提交]

首页 新闻 博问 专区 闪存 班级 【推荐】News: 大型组态、工控、仿真、CADGIS 50万行VC++源码免费下载
【推荐】博客园 & 陌上花开HIMMR 给单身的程序员小哥哥助力脱单啦~
【推荐】博客园x示说网联合策划,AI实战系列公开课第二期
【推荐】了不起的开发者,挡不住的华为,园子里的品牌专区
【推荐】未知数的距离,毫秒间的传递,声网与你实时互动
【推荐】 阿里云双十一返场继续,云服务器0.73折起
【推荐】年薪100w+的技术人,都做对了什么?
历史上的今天:
2018-11-11 上线几天后,出现问题,这锅谁来背呢?
2018-11-11 REST风格接口测试利器Wisdom rest-client
2017-11-11 在 Ubuntu13.10 服务器中安装 Munin(监视工具)【转】

公告 昵称: 久曲健
园龄: 5年9个月
粉丝: 402
关注: 20 +加关注首页联系订阅管理新随笔微信:chandlerman个人出版图书关于我<2020年11月>日一二三四五六 1 2 3 4 5 6 78 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 1 2 3 4 5 6 7 8 9 10 11 12 找找看积分排名最新随笔Pytest学习(六) - conftest.py结合接口自动化的举例使用阶梯场景设计:找出性能瓶颈,做负载测试解决POI读取大Excel文件内存溢出问题30岁后,你还剩下什么?Jmeter如何把提取到的类型是Bearer的token值放在其他接口的请求头里被内存溢出苦苦折磨的小测试!!!Pytest学习(五) - Pytest的用例执行测试后的常见报错Pytest学习(四) - fixture的使用Pytest学习(三) - setup和teardown的使用Pytest学习(二) - 断言的使用我的标签随笔分类android测试(7)appium(39)cucumber(4)eclipse(4)ES(6)fiddler(2)git(6)GitHub(3)html(2)IntelliJ IDEA(26)javascript(5)Java相关(23)jenkins(22)jmeter(43)linux(37)log4j(4)maven(10)monkeyrunner(6)POI(6)powermock(12)pytest(9)python(8)robotium(5)ROS(1)selenium (57)Spark(3)Spring(19)spring boot(19)sql(1)TestNG(16)uiautomator(1)vmware虚拟机(2)vue(10)zookeeper(1)安全测试(10)功能测试(7)接口测试(11)批处理程序(1)其他(6)生活(18)性能测试(5)文章分类阅读排行idea如何导入一个maven项目(121414)Java一次读取文本文件所有内容(106458)log4j:WARN Please initialize the log4j system properly 问题解决(80983)IDEA永久激活使用(支持2019.3版本哦)(42486)解决maven编译 Process terminated(39460)推荐排行idea如何导入一个maven项目(21)30岁后,你还剩下什么?(16)Java一次读取文本文件所有内容(12)log4j:WARN Please initialize the log4j system properly 问题解决(12)Fiddler如何模拟弱网环境进行测试(11)最新评论Re:30岁后,你还剩下什么?@VictorStar 嗯嗯真好 加油…–久曲健Re:30岁后,你还剩下什么?加油,我也30了,也没有女朋友,只有一个老婆O(∩_∩)O~ --VictorStarRe:30岁后,你还剩下什么?@纸箱 已买…–久曲健Re:30岁后,你还剩下什么?所以,不考虑买一份保险? --纸箱Re:30岁后,你还剩下什么?@欢乐谷 谢谢支持,你也是注意身体呀…–久曲健文章档案随笔档案2020年11月(5)2020年10月(11)2020年9月(16)2020年8月(6)2020年7月(2)2020年6月(4)2020年5月(24)2020年4月(5)2020年3月(1)2020年2月(9)2020年1月(17)2019年12月(25)2019年11月(13)2019年10月(2)2019年9月(11)2019年8月(18)2019年7月(4)2019年6月(4)2019年5月(4)2019年4月(5)2019年3月(10)2019年2月(8)2019年1月(16)2018年12月(5)2018年11月(15)2018年10月(4)2018年9月(1)2018年8月(3)2018年7月(4)2018年6月(5)2018年5月(5)2018年4月(16)2018年3月(11)2018年2月(7)2018年1月(24)2017年12月(6)2017年11月(11)2017年10月(5)2017年9月(7)2017年8月(14)2017年7月(3)2017年6月(3)2017年5月(14)2017年4月(2)2017年3月(13)2017年2月(26)2017年1月(10)2016年12月(40)Close MenuCreated with SnapMENU久曲建的测试窝 Pytest学习(六) - conftest.py结合接口自动化的举例使用 发表于 2020-11-11 23:31阅读:25评论:0推荐:0pytestScroll Down00关注跳至底部

    昵称:                     久曲健         
    园龄:                     5年9个月         
    粉丝:                     402         
    关注:                     20         +加关注

搜索  常用链接 我的随笔我的评论我的参与最新评论我的标签最新随笔1.Pytest学习(六) - conftest.py结合接口自动化的举例使用2.阶梯场景设计:找出性能瓶颈,做负载测试3.解决POI读取大Excel文件内存溢出问题4.30岁后,你还剩下什么?5.Jmeter如何把提取到的类型是Bearer的token值放在其他接口的请求头里6.被内存溢出苦苦折磨的小测试!!!7.Pytest学习(五) - Pytest的用例执行测试后的常见报错8.Pytest学习(四) - fixture的使用9.Pytest学习(三) - setup和teardown的使用10.Pytest学习(二) - 断言的使用 随笔分类 android测试(7) appium(39) cucumber(4) eclipse(4) ES(6) fiddler(2) git(6) GitHub(3) html(2) IntelliJ IDEA(26) javascript(5) Java相关(23) jenkins(22) jmeter(43) linux(37) log4j(4) maven(10) monkeyrunner(6) POI(6) powermock(12) pytest(9) python(8) robotium(5) ROS(1) selenium (57) Spark(3) Spring(19) spring boot(19) sql(1) TestNG(16) uiautomator(1) vmware虚拟机(2) vue(10) zookeeper(1) 安全测试(10) 功能测试(7) 接口测试(11) 批处理程序(1) 其他(6) 生活(18) 性能测试(5) 随笔档案 2020年11月(5) 2020年10月(11) 2020年9月(16) 2020年8月(6) 2020年7月(2) 2020年6月(4) 2020年5月(24) 2020年4月(5) 2020年3月(1) 2020年2月(9) 2020年1月(17) 2019年12月(25) 2019年11月(13) 2019年10月(2) 2019年9月(11) 2019年8月(18) 2019年7月(4) 2019年6月(4) 2019年5月(4) 2019年4月(5) 2019年3月(10) 2019年2月(8) 2019年1月(16) 2018年12月(5) 2018年11月(15) 2018年10月(4) 2018年9月(1) 2018年8月(3) 2018年7月(4) 2018年6月(5) 2018年5月(5) 2018年4月(16) 2018年3月(11) 2018年2月(7) 2018年1月(24) 2017年12月(6) 2017年11月(11) 2017年10月(5) 2017年9月(7) 2017年8月(14) 2017年7月(3) 2017年6月(3) 2017年5月(14) 2017年4月(2) 2017年3月(13) 2017年2月(26) 2017年1月(10) 2016年12月(40) 相册 test(15) 最新评论1. Re:30岁后,你还剩下什么?@VictorStar 嗯嗯真好 加油…–久曲健2. Re:30岁后,你还剩下什么?加油,我也30了,也没有女朋友,只有一个老婆O(∩_∩)O~–VictorStar3. Re:30岁后,你还剩下什么?@纸箱 已买…–久曲健4. Re:30岁后,你还剩下什么?所以,不考虑买一份保险?–纸箱5. Re:30岁后,你还剩下什么?@欢乐谷 谢谢支持,你也是注意身体呀…–久曲健阅读排行榜 1. idea如何导入一个maven项目(121414) 2. Java一次读取文本文件所有内容(106458) 3. log4j:WARN Please initialize the log4j system properly 问题解决(80983) 4. IDEA永久激活使用(支持2019.3版本哦)(42486) 5. 解决maven编译 Process terminated(39460) 评论排行榜 1. 30岁后,你还剩下什么?(24) 2. 刚做测试工作一年的时候,我是怎样的?(18) 3. log4j:WARN Please initialize the log4j system properly 问题解决(14) 4. 马上要到30岁,你也被催婚了吗(12) 5. Fiddler如何模拟弱网环境进行测试(12) 推荐排行榜 1. idea如何导入一个maven项目(21) 2. 30岁后,你还剩下什么?(16) 3. Java一次读取文本文件所有内容(12) 4. log4j:WARN Please initialize the log4j system properly 问题解决(12) 5. Fiddler如何模拟弱网环境进行测试(11)

[ 优秀不够你是否无可替代! ]This blog has running : 198 d 0 h 53 m 13 sღゝ◡╹)ノ♡友情链接:申请坑位/申请坑位/申请坑位/申请坑位/申请坑位 Copyright © 2020 久曲健 Powered by .NET 5.0.0 on Kubernetes Theme version: v1.3.3 / Loading theme version: v1.3.3

看板娘 你都复制了些什么呀,转载要记得加上出处哦! 一、conftest.py作用二、conftest.py配置fixture注意事项三、实例场景应用1、最顶层conftest2、同级目录下的第一个用例3、test_query目录4、test_loginout目录5、test_addcart目录四、运行目录下所有用例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值