如何优雅地使用httprunner测试框架进行接口测试?收藏
先来个小故事:
一天 , 你的领导丢给你几十个接口 , 然后希望你输出报告 。 你:"exm?" , 改改改 。 于是你引入了unittest单元测试框架、HTMLTestRunner等等 。
【如何优雅地使用httprunner测试框架进行接口测试?收藏】正打算将各个测试用例分类重新规整 , 你领导又来了 。 如果世界上有真爱这种东西存在的话 , 那你领导对你的爱便是了 。
"我又从开发那里帮你要了100个接口过来测 , 开不开心?"
"你的脚本给我看下 , 这个是啥意思?可以在我那边运行吗?"
"你的脚本怎么这么多啊 , 好乱啊"
"这个接口我要做性能测试 , 还有这个、这个……"
"这几个接口是串联起来的 , 你处理下"
你几近崩溃 , 为什么 , 为什么不能简单点 。
……
幸好 , 你并没有放弃 , 你在某个机缘巧合下发现了一个叫httprunner的测试框架 , 这个框架使用的是yaml格式的文本来描述脚本 , 只需一行命令即可进行接口测试 。 在连夜研究完这个框架后 , 你发出慨然长叹:"原来接口测试可以这么优雅地写啊!"
于是你将几百个接口丢进一个yaml文本里 , 执行了下面这条命令:
hrun api.yaml
刷刷刷 , 搞定 , 大家都吃惊地看着你 , 似乎在看一头变帅的猪
"这次咋这么快?平时光调试都得一两天 。 "
"测试报告不错!"
"数据也都校验了 。 "
"咦 , 这脚本简单 , 我都看得懂 , 可以可以 , 很强势!"
…
so , 引入我们今天的主题 , 如何使用httprunner的呢?
文章插图
这里是正文喽:
说说我的经历吧 , 我学习Httprunner也有一段时间了 , 爬的坑一个接着一个 , 今天来做个总结吧~ 也希望有其他的小伙伴把你入的坑一起分享下 。
从一开始以为不就一个框架嘛 , 有什么难的 , 不就方法调用么!再然后 , 天哪!怎么写?没有思路 , 最后 , 哦~好像知道怎么写了 , 不知道你们在学一个新框架的时候是不是这样的 。
好了 , 话不多说 , 开始疯狂地吐槽吧~
一、代码格式要注意!
场景:我在编写testcase的时候 , 可能下一级没有空四格 , 然后就一直报错 , 但是也找不到在哪里?
所以 , 注意代码格式 , 层级关系空4个字符
文章插图
二、没有错误提示 , 下手慢点!
场景:一个很尴尬的案例 , 我把variables写成了varibales , 然后我下一个case还是直接复制 , 运行时一直提示'XXX is not found' , 当时就想 , 难道是我方法写错啦?结果 , 找了一下午这么低级的错误 。 看来要把自己关小黑屋好好反思了 。 因为htr的yaml文件没有错误提示 , 所以要确保每个单词都是对的 。
文章插图
三、文件名别搞错啦!
相信有很多小伙伴是通过抓包工具下的文件 , 很多时候会改成yml的格式 , 所以在运行的时候 , 千万注意了 , 找不到文件的时候往往就是文件名出错了 。
四、调用方法不知道哪里了!
在写层级关系的时候 , 经常会用到debugtalk.py的方法 , 然而httprunner的错误提示不是很友好 , 往往找一个错误要找好久 , 然后问了领导 , 可以在每一个方法面加上pdb.set_trace方法 , 每次调用这个方法的时候 , 键盘输入n , 就可以一步步调试了 。
文章插图
五、循环操作怎么搞?
当我要多次添加数据或者多次删除数据的时候 , 不知道怎么重复操作 , 找了很多资料后发现了一个方法可以在testsuites添加parameters,每一个返回值就可以实现一次testcase的执行 , 并且csv参数化也能实现 。 看了官方文档说是数据驱动的思想还有 , parameters一定要写在testsuites中 , 写在testcases是没有用的 , 不会生效 。
文章插图
文章插图
文章插图
六、原来拼接路径是这样的
在我印象中路径的匹配应该是这样写的:$url+$parmas , 但是这样写的话你的路径就是这样的:'http://url+params',你的路径就是不对的 , 怎么能请求接口成功呢?
所以正确是这样的:
- 产业|前瞻生鲜电商产业全球周报第67期:发力社区团购!京东内部筹划“京东优选”
- 王兴称美团优选目前重点是建设核心能力;苏宁旗下云网万店融资60亿元;阿里小米拟增资居然之家|8点1氪 | 美团
- 页面|如何简单、快速制作流程图?上班族的画图技巧get
- 培育|跨境电商人才如何培育,长沙有“谱”了
- 抖音小店|抖音进军电商,短视频的商业模式与变现,创业者该如何抓住机遇?
- 计费|5G是如何计费的?
- “天河优创”放榜
- 车轮旋转|牵引力控制系统是如何工作的?它有什么作用?
- 主题活动|首届“上海在线生活节”启动,8大电商平台优惠活动承包你的12月
- 视频|短视频如何在前3秒吸引用户眼球?