![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
httprunner
文章平均质量分 68
阿里大叔说测试
恭喜您发现宝藏UP主一枚,UP主只做精品
★希望大家都静心学习!忌浮躁!愿你成为梦中的自己!
★喜欢请一键三连加关注,谢谢大家支持!
展开
-
谈谈我最近测试面试的总结
本人4年测试经验,211 本科计算机专业,由于互联网裁员,最近在 bosss 上投了些简历,测试开发岗,看看目前市场情况。虽然都在说大环境不好,失业的人很多,我最近约面试的还是比较多的,说说最近的体会吧,希望能给大家提供价值。对项目整体都有比较深的了解,有一定代码基础后,可以试试测试开发岗。测试开发岗位更多是综合性岗位,很多公司招测开,其实是当作高级测试来招的,进入之后,很少直接让你写测试工具的,更多的还是业务测试、写写测试脚本之类的,现在市场的核心一定是体现业务价值,纯写工具的很少了。原创 2023-09-03 20:27:00 · 112 阅读 · 0 评论 -
Python+Appium+Pytest+Allure实战APP自动化测试
pytest只是单独的一个单元测试框架,要完成app测试自动化需要把pytest和appium进行整合,同时利用allure完成测试报告的产出。编写常规的线性脚本具体的步骤如下:1、设计待测试APP的自动化测试用例2、新建app测试项目3、配置conftest.py文件等4、编写整体app测试用例运行文件5、把设计好的自动化测试用例转化成脚本备注:为了保证脚本的稳定性,又把pytest常用功能应用,以下示例采用android计算器为示例讲解。原创 2023-08-15 21:49:16 · 155 阅读 · 0 评论 -
HttpRunner自动化工具之设置代理和请求证书验证
httprunner设置代理:httprunner 库本身没有提供设置代理的接口,但是底层使用了urllib.requests 等库,可以设置HTTP_PROXY 和HTTPS_PROXY 环境变量,常用的网络库会自动识别这些环境变量。原创 2023-08-13 14:38:57 · 240 阅读 · 0 评论 -
HttpRunner自动化测试之httprunner运行方式
httprunner在进行接口测试的时候,有两种运行方式通过命令行(CLI)运行,核心命令如下hrun:httprunner的缩写,功能与httprunner完全相同 例:hrun ./项目文件的路径 、httprunner ./项目文件的路径locusts:基于Locust实现性能har2case:辅助工具,可将har格式(HTTP Archive)转换为YAML或者JSON格式httprunner执行命令如下:1、使用 hrun ./项目文件的路径;原创 2023-08-10 21:56:00 · 358 阅读 · 0 评论 -
HttpRunner自动化测试之脚手架工具使用(一键搭建)
每一个成熟的系统工具,都会有对应的脚手架工具,它可以快速构建项目的必要目录,不必自己一个一个的配置与搭建,只需要执行一些命令即可。1、在命令模式下输入hrun --startproject 项目名称2、使用pycharm打开自动创建的 项目名称 目录步骤如下:1、在pycharm中的 Terminal 命令模式下中输入命令,先输入cd .. 退出所在的项目;如下图:2、输入脚手架(一键搭建)命令:hrun --startproject httprunner_test_demo;如下图。原创 2023-08-08 21:17:53 · 228 阅读 · 0 评论 -
HttpRunner自动化测试工具之录制工具使用--使用抓包工具通过命令转成yml文件
录制工具使用: 为了简化测试用例的编写工作,HttpRunner实现了测试用例生成的功能,对应的转换工具为一个独立的项目:har2case使用操作步骤:1、通过抓包工具获取HAR格式的数据包2、通过命令har2case har的数据包路径 -2y或--to-yml 转为yml文件,默认转为json格式方式一:使用Charles 抓包工具转成yaml格式使用charles 抓包工具,捕获 百度首页的http请求1、打开charles抓包工具,先捕获需要的http请求 如下图: 2、鼠标选中 htt原创 2023-08-06 21:28:43 · 403 阅读 · 0 评论 -
HttpRunner自动化工具之times 重复执行
单个用例重复执行 如果想让某个测试步骤重复执行,可以在test 中增加times参数,如下:执行效果:光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,测试开发视频教程、原创 2023-08-03 16:14:21 · 291 阅读 · 0 评论 -
HttpRunner自动化工具之实现参数化传递
调用 debugtalk.py 中自定义的函数生成参数列表同样,也可以进行多组参数传递;原创 2023-07-31 21:07:39 · 488 阅读 · 0 评论 -
HttpRunner自动化测试之响应中文乱码处理
当调用接口,响应正文返回的中文是乱码时,一般是响应正文的编码格式不为 utf-8 导致,此时需要根据实际的编码格式处理示例:图1中 extract 提取title标题,output 输出 title 变量值,如下图2可见,输出的变量值成了乱码,图3的报告中可以看到响应的编码为 ISO-8859-1添加headers头部信息,如下图4个关键字必须:q=0.9上述头部信息关键字,可通过F12键获取yaml示例:添加headers头部信息,如下图。原创 2023-07-26 20:28:52 · 349 阅读 · 0 评论 -
HttpRunner自动化工具之httprunner的测试用例分层机制
在接口自动化测试维护过程中,由于测试用例的增加和需求变更导致测试用例的调整,使自动化测试用例的维护非常麻烦,直接关系到自动化测试能否持续有效地在项目中开展。概括来说,测试用例分层机制的核心是将接口定义、测试步骤、测试用例、测试场景进行分离,单独进行描述和维护,从而尽可能地减少自动化测试用例的维护成本。原创 2023-07-24 21:05:34 · 246 阅读 · 0 评论 -
HttpRunner自动化测试之忽略跳过用例--skip
无条件跳过用例条件成立,返回值为True时候成立(非0、非空等为true)条件不成立,返回值为False时候成立(0、空等为false)上述关键字只能在test 测试步骤中使用。原创 2023-07-21 17:18:23 · 304 阅读 · 0 评论 -
HttpRunner自动化之初始化和清理操作--hook机制
Httprunner 框架中的 hook 机制相当于unittest框架中的 setup , teardown 函数,用来进行测试用例执行之前的环境初始化以及测试用例执行完毕之后的环境清理操作。httprunner 中的 hooks 机制可以用在测试用例层级也可以用在测试步骤层级,其关键字是:setup_hooks、teardown_hooks1.一般在debugtalk.py中编写相应的初始化及环境清理函数。原创 2023-07-19 15:46:16 · 485 阅读 · 0 评论 -
HttpRunner自动化测试之辅助函数debugtalk.py
Httprunner框架中,使用yaml或json文件进行用例描述,无法做一些复杂操作,如保存一些数据跨文件调用,或者实现一些复杂逻辑判断等,为了解决这个问题,引入了debugtalk.py辅助函数来进行一些复杂操作。原创 2023-07-17 20:11:29 · 229 阅读 · 0 评论 -
HttpRunner自动化之跨文件传递变量值&输出变量值
输出变量值,此参数在httprunner2.2版本的时候被 export 代替,跨文件传递参数的功能在httprunner2.2之后不生效。(但是实际测试过程中,还可以使用跨文件功能)输出变量值,且可以跨文件传递变量值(推荐使用)举例:用例层 引用 用例层,可通过 export 进行跨文件传输下图中 export 关键字下的 - token,可以输出变量值,也可以进行跨文件传输。原创 2023-07-14 21:03:29 · 265 阅读 · 0 评论 -
HttpRunner自动化测试工具之环境变量搭建
环境变量设置: Httprunner通过在项目根目录下新增 .env 文件进行环境变量配置,其作用是存放一些httprunner接口测试脚本中的一些固定配置项(如:主机地址、端口等)。1、在项目的根目录下新增 .env文件,输入格式为 变量名=变量值。如下图 2、在测试用例需要使用的部分,使用ENV()方法进行调用。根据上例写法如下:${ENV(BASE_URL)} ;如下图:光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。如果对你有帮助的话原创 2023-07-12 20:48:04 · 373 阅读 · 0 评论 -
HttpRunner自动化测试工具之获取响应数据&extract提取值到变量
1、响应行,响应头;# 获取响应数据: 响应行(200,ok)\响应头- config:name: 测试百度网站- test:name: 接口名称 百度接口request:url: /extract: # 提取值存储到变量中- code: status_code # 响应码- header_Content: headers.Content-Type # 响应头部validate:- eq: [$code,200] # 引用变量 $变量名2、获取响应正文。原创 2023-07-07 21:41:08 · 456 阅读 · 0 评论 -
HttpRunner自动化之请求中带有 headers 的接口和发送POST请求
可通过headers 添加头部信息,如下图发送POST请求可通过发送的数据选择 json/data/body/ 添加数据。原创 2023-07-05 20:18:33 · 166 阅读 · 0 评论 -
HttpRunner自动化测试之模拟发送GET请求&自动生成测试报告
1、首先在python项目下新建一个 testcases 文件夹,然后再新建一个以 .yml 的文件后缀名,如demo01.ymlconfig: 用例基本配置信息name:测试用例名称配置base_url:测试主机地址test:测试步骤request:请求信息配置url:请求地址method:请求方式params:url参数headers: 请求头部validate:断言设置- config: # 配置信息name: 测试百度网站 # 测试用例名称。原创 2023-07-03 16:34:13 · 187 阅读 · 0 评论 -
HttpRunner自动化测试之环境安装
方式一、HttpRunner 的稳定版本托管在PyPI 上,可以使用pip进行安装。在dos命令提示符窗口中输入:pip install httprunner==2.5.7方式二、在pycharm中下载 HttpRunner ,选择2.5.7版本pycharm下载步骤:File——Settings——Python Interpreter——点击加号——输入httprunner进行匹配——选择版本号2.5.7——点击Install Package;如下图。原创 2023-06-30 20:41:28 · 388 阅读 · 0 评论 -
HttpRunner自动化工具之YAML文件简介
Yet Another Markup Language :另一种标记语言。yaml 是专门用来写配置文件的语言,非常简洁和强大,更直观,更方便,有点类似于json格式。在自动化测试框架中,常应用于自动化测试过程,用来进行数据驱动的数据存储载体,如典型的httprunner。原创 2023-06-28 21:16:05 · 231 阅读 · 0 评论 -
HttpRunner抓包工具之HttpRunner介绍
HttpRunner 是一款面向HTTP(S) 协议的通用测试框架,只需编写维护一份YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。作者李隆之前是大疆的测试开发工程师,项目起源于大疆内部的测试需求,之后转为开源项目。原创 2023-06-26 16:34:58 · 216 阅读 · 0 评论 -
HttpRunner自动化测试之实现参数化传递
调用 debugtalk.py 中自定义的函数生成参数列表同样,也可以进行多组参数传递;debugtalk.py文件中的代码示例:# 参数化# return ["猫","狗","大象"]return [["猫","猫_百度搜索"],["狗","狗_百度搜索"],["大象","大象_百度搜索"]]testsuites层:testcases层:api层:原创 2023-04-07 16:12:27 · 397 阅读 · 0 评论 -
HttpRunner自动化之响应中文乱码处理
图1中 extract 提取title标题,output 输出 title 变量值,如下图2可见,输出的变量值成了乱码,图3的报告中可以看到响应的编码为 ISO-8859-1。当调用接口,响应正文返回的中文是乱码时,一般是响应正文的编码格式不为 utf-8 导致,此时需要根据实际的编码格式处理。上述是通过utf-8进行断言比对,还可以通过 iso8859-1 进行断言比对;在yaml文件中,断言引用函数需要加引号 " ",如下图。# iso8859-1 编码,解码成 utf-8。原创 2023-04-06 20:37:28 · 363 阅读 · 0 评论 -
HttpRunner的测试用例分层机制
在接口自动化测试维护过程中,由于测试用例的增加和需求变更导致测试用例的调整,使自动化测试用例的维护非常麻烦,直接关系到自动化测试能否持续有效地在项目中开展。概括来说,测试用例分层机制的核心是将接口定义、测试步骤、测试用例、测试场景进行分离,单独进行描述和维护,从而尽可能地减少自动化测试用例的维护成本。原创 2023-04-04 17:33:05 · 236 阅读 · 0 评论 -
HttpRunner辅助函数debugtalk.py
Httprunner框架中,使用yaml或json文件进行用例描述,无法做一些复杂操作,如保存一些数据跨文件调用,或者实现一些复杂逻辑判断等,为了解决这个问题,引入了debugtalk.py辅助函数来进行一些复杂操作。原创 2023-04-02 19:56:16 · 410 阅读 · 0 评论 -
HttpRunner跨文件传递变量值&输出变量值
输出变量值,此参数在httprunner2.2版本的时候被 export 代替,跨文件传递参数的功能在httprunner2.2之后不生效。(但是实际测试过程中,还可以使用跨文件功能)输出变量值,且可以跨文件传递变量值(推荐使用)举例:用例层 引用 用例层,可通过 export 进行跨文件传输下图中 export 关键字下的 - token,可以输出变量值,也可以进行跨文件传输。原创 2023-03-31 20:49:01 · 188 阅读 · 1 评论 -
HttpRunner自动化之接口关联、常用断言、环境变量设置
len_ge、length_greater_than_or_equals、count_ge、count_greater_than_or_equals实际结果的长度大于等于期望结果。len_le、length_less_than_or_equals、count_le count_less_than_or_equals实际结果的长度小于等于期望结果。len_gt、length_greater_than、count_gt、count_greater_than 判断实际结果的长度大于和期望结果。原创 2023-03-30 17:34:19 · 254 阅读 · 0 评论 -
HttpRunner自动化测试,获取响应数据&extract提取值到变量
1、响应行,响应头;2、获取响应正文通过 extract 提取响应正文的数据并存储到变量中(可使用正则提取),如下图:注:如果断言为中文,加上headers头部的Accept-Language即可,后面有专门写的中文乱码解码的问题解决通过 extract 提取响应正文的数据并存储到变量中(提取json数据),格式以content为根节点:content.key.key.key;如下图:注:可通过 https://www.bejson.com/ 该网址展示json视图更清晰。原创 2023-03-29 14:43:06 · 182 阅读 · 0 评论 -
HttpRunner自动化测试之模拟请求中带有 headers的接口和post请求
可通过headers 添加头部信息,如下图POST请求发送POST请求可通过发送的数据选择 json/data/body/ 添加数据实战案例光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。我的自动化测试开发之路,一路走来都离不每原创 2023-03-28 16:03:20 · 130 阅读 · 0 评论 -
HttpRunner模拟发送GET请求&自动生成测试报告
1、首先在python项目下新建一个 testcases 文件夹,然后再新建一个以 .yml 的文件后缀名,如demo01.ymlconfig: 用例基本配置信息name:测试用例名称配置base_url:测试主机地址test:测试步骤request:请求信息配置url:请求地址method:请求方式params:url参数headers: 请求头部validate:断言设置- config: # 配置信息name: 测试百度网站 # 测试用例名称。原创 2023-03-27 21:50:34 · 110 阅读 · 0 评论 -
HttpRunner自动化测试详细介绍、环境搭建、实战案例
Yet Another Markup Language :另一种标记语言。yaml 是专门用来写配置文件的语言,非常简洁和强大,更直观,更方便,有点类似于json格式。在自动化测试框架中,常应用于自动化测试过程,用来进行数据驱动的数据存储载体,如典型的httprunner大小写敏感使用缩进表示层级关系不允许使用TAB 键来缩进,只允许使用空格键来缩进缩进的空格数量不重要使用"#"来表示注释对象:键值对的集合,又称为映射(mapping)/ 哈希(hashes)/ 字典(dictionary)原创 2023-03-26 21:01:38 · 672 阅读 · 0 评论