百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

httprunner实战接口测试笔记,拿走不谢

myzbx 2025-01-05 19:02 14 浏览

每天进步一点点,关注我们哦,每天分享测试技术文章

本文章出自【码同学软件测试】

码同学公众号:自动化软件测试

码同学抖音号:小码哥聊软件测试


01 开始

安装跟创建项目

pip install httprunner==2.5.7 -i http://pypi.douban.com/simple --trusted-host pypi.douban.compip install har2case

使用excel传数据需要用到以下库

pip install pandas

pip install xlrd

pip install openpyxl


查看关键字的使用路径

external Libraties->lib->site-packages->httprunner->schemas


查找关键字使用

这里会对关键字是会用进行说明解析parser.py(解析器)


部分关键字


各个文件及目录的使用说明

一般单接口(api文件夹存放)用返回码200做判断

一般测试用例(testcase文件夹存放)用返回的业务做判断

由于单接口不止给一个用例使用,在其他用例里面他只需要正确的返回,在该接口要给他一个默认的参数


1.fiddler接口录制


导出为1.har,然后对1.har生成json格式


执行录制的脚本,然后会生成报告


点击可以查看报告信息

检查log日志发现是token对不上,因为我们在录制过程中已经生成了token,重新执行后又重新生成新的token,匹配不上,就导致执行失败


生成的录制脚本需要重新调整下才能拿来执行


2.编写get接口请求类型

创建项目,然后自动生成httprun项目文件


get填写参数用的是params


3.编写参数为k=v的POST接口

执行并检查报告


4.编写参数为json的POST接口

对后端的返回数据进行校验

"注册成功"系统会自动校验为字符串,但是0会校验为数字,所以返回的是"0",所以校验也要写成"0"

执行

检查结果

5.编写参数为k=json的POST接口

老师写的实现方法2:

老师写的这个执行完成后的报告可以看到请求的参数


6.需要签名验证的POST接口


https://blog.csdn.net/heqiang525/article/details/89879056

https://www.cnblogs.com/lanston1/p/11025881.html

查看结果


免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦


02

关联接口


Cookie&Token案例


1. cookie关联

登录并查询余额

api目录下都是单独针对某个接口做测试


执行

报告


2. token关联


执行

查看结果


03

管理


1. 环境变量

使用变量


2. 查看debug日志

hrun api\add_customer.yml --log-level debug

3. 报错信息总结

1:

'titile-params-asservalue:${read_excel("data/crmdata.xlsx",\'新增客户\')}' is not of type 'object'

因为没有加空格,格式不对

2.转换为json有问题,参数为int传入要给一个值,或者是为


免费领取 码同学软件测试 课程笔记+超多学习资料+完整视频+最新面试题,可以转发文章 + 私信「码同学666」获取资料哦


或者是

3.

excel保存json格式,读取excel的值要转换为json格式的代码没生效


4. 使用skip管理用例步骤

举例:删除客户信息,客户信息可关联联系人,关联商机,如果关联了后直接删除客户会报错

测试用例会有这样的场景,删除关联了联系人的客户,删除关联了商机的客户,也可以删除既关联了联系人也关联了商机的客户,测试用例可以罗列所有的关联业务,根据场景进行调用.


5. 保存日志

hrun testsuites\crm_testsuite.yml --log-file logs\crm.log --log-level debug

每次执行的日志都是往后叠加,而不会清除之前的日志


6. 第三方测试报告

先把报告复制在当前目录下,后面直接带第三方文件,不然的话要带目录

hrun testsuites\crm_testsuite.yml --report-template=extent-theme-template.html

04

参数化


1. 直接在测试集传参


2. 通过文件传参

excel可以保存json也可以保存表单,但是hrun自带的csv文件只能用来保存以逗号分割的参数值.不适用json

csv:

excel:


3. 通过调用方法传值${方法()}


05

sql


1. 安装

pip install PyMySQL


2. 执行

1.造数要造有特殊意义,比如name叫做auto客户1,然后下一个用例叫auto客户2

清数据的时候就删掉name包含auto客户的

2.删除相关数据

写在debugtalk.py文件中,然后用例去调用

在测试用例执行前进行删除相关数据,写在用例里


END

免费领取码同学软件测试课程笔记+超多学习资料+学习完整视频,可以关注我们公众号哦:自动化软件测试

本文著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

相关推荐

一键生成高颜值图表!让你的文字瞬间有画面感,职场人必备!

哈喽,打工人们!忙碌的周中,大熊又来给你们带来一个超实用的效率神器啦!这次的宝藏网站绝对是那种用过就离不开的"真香"型产品!假设你明天就要做重要汇报,可面对一大堆密密麻麻的文字材料,你...

批量将 Word 转换为 PDF/Excel/Txt/图片等多种格式

Word文档是我们工作中经常会打交道的一种文档格式,我们也经常会有需要对Word文档进行格式转换的需求,比如将Word格式转换为PDF、将Word文档转换为Excel、将Word...

绝了!一键用AI生成高颜值动态PPT(附详细步骤+Prompt)

大家好,我是一名酷爱研究AI的产品经理,最近我有个新发现:那些花了你3天做出来的PPT,现在用AI可以1小时搞定!而且颜值还高!为什么AI做PPT比传统方式效率高10倍?我用一张图就能告诉你:AI生成...

ztext - 简单几行代码创建酷炫3D特效文字的开源JS库

把网页上的文字变成酷炫的3D风格,还能制作旋转动效,有了ztext.js,只需要几行代码。ztext能做什么ztext.js是一个能把常规的平面文字变成3D样式的前端开源代码库,让开发者...

文字内插入小图片,也太可爱了吧(文字中怎么插图片)

图文排版H5手机版秀米有小伙伴留言问添加图片的时候可不可以把图片添加到文字之间比如下面这句话中的小贴纸图片后面可以接着输入文字其实吧这就是咱们的『文字内插入小图片』功能嘛可以用来在文字内加个表情包又...

Linux环境下C++代码性能分析方法(linux怎么写c++代码)

技术背景在开发C++应用程序时,找出代码中运行缓慢的部分是进行性能优化的关键。在Linux系统上,有多种工具和方法可用于对C++代码进行性能分析,每种方法都有其特点和适用场景。实现步骤手动中断调试法在...

SVG互动图文,让你的文章更有趣!教你4种简单易学的黑科技玩法!

如果你是一个公众号创作者,那么你一定想知道如何让你的文章更加吸引人,更加有趣,更加有创意。你可能已经尝试过各种图文排版技巧,但是你是否知道,有一种黑科技可以让你的文章变得更加酷炫,更加互动,更加爆款?...

Videoscribe怎么实现实心中文汉字的手绘制作

很多朋友在制作手绘视频的时候,不知道怎么输入实心的中文汉字,之前我们已经给大家分享了怎么输入汉字的方法,但是有一点遗憾的是输出的汉字是空心的手绘展示,在视觉上并不是非常的美观。经过大家不断的探索,终于...

一款用于将文本转化成图表的现代化脚本语言

大家好,又见面了,我是GitHub精选君!今天要给大家推荐一个GitHub开源项目terrastruct/d2,该项目在GitHub有超过10.3kStar,用一句话介绍该项目就是:...

探秘 Web 水印技术(制作水印网站)

作者:fransli,腾讯PCG前端开发工程师Web水印技术在信息安全和版权保护等领域有着广泛的应用,对防止信息泄露或知识产品被侵犯有重要意义。水印根据可见性可分为可见水印和不可见水印(盲水印)...

不忍心卸载的五款神仙工具(不忍心卸载的五款神仙工具是什么)

001.效率工具uTools-装机必备的生产力工具集uTools是一款非常强大的可以装下几乎所有效率工具的电脑生产力工具集,目前拥有Windows、Mac和Linux三个版本。软件界面...

「SVG」飞花令!这份最高检工作报告“超有料”

原标题:【SVG】飞花令!这份最高检工作报告“超有料”栏目主编:秦红文字编辑:沈佳灵来源:作者:最高人民检察院...

svg|2025政府工作报告,有没有你关心的数据?

··<setattributeName="visibility"begin="click+0s"dur="1ms"fill="freeze"restart="never"to="hi...

videoscribe只能输入英文,如何输入中文文本?

videoscribe只能输入英文,如何输入中文文本?打开VideoScribe软件,打开要添加中文字体的位置。打开Photoshop并在文件中创建一个新的透明背景图层。注意:必须是透明背景层。...

五个流行的SVG在线编辑器(svg编辑工具)

随着响应网络的发展,越来越多的高质量的SVG在线编辑器被公众所熟知。SVG矢量图形也越来越受欢迎,以便在任何设备上呈现图像,甚至一些易于使用的SVG在线编辑器,可以替代PS,本文总结了五种流行的SVG...