httprunner
文章平均质量分 77
接口测试框架httprunner
测试-东方不败之鸭梨
这个作者很懒,什么都没留下…
展开
-
接口自动化-httprunner3引入基于契约校验响应数据
在进行接口自动化时,需要对返回数据进行校验。在响应数据中字段少的时候,可以对每个字段进行校验。但当响应数据中字段多时,单独写校验比较麻烦。引入基于契约的校验,可以对返回数据进行基于值或者类型的全量校验。原创 2023-04-07 16:34:08 · 443 阅读 · 0 评论 -
HttpRunner3.x 源码解析(5)-runner.py
首先看下生成的pytest文件首先类继承了HttpRunner类主要包括config和teststeps两部分函数的入库是test_start()方法。原创 2023-04-05 22:34:29 · 1286 阅读 · 0 评论 -
HttpRunner3.x 源码解析(4)-工具类loader.py
这些方法可以灵活的引用在其他项目中。原创 2023-04-05 17:02:23 · 447 阅读 · 0 评论 -
HttpRunner3.x 源码解析(3)-main_make生成用例文件
当终端输入httprunner make 目录/文件名,则调用main_make来生成py文件格式的测试用例对于tests_path中的路径,首先进行路径兼容。如果不是绝对路径,则转换为绝对路径。然后调用__make()函数,将测试用例文件转为可运行的pytest文件。pytest_files_format_list返回py文件列表,它的类型是如:dict.keys()方法是的字典方法,它将字典中的所有键组成一个可迭代序列并返回。原创 2023-04-05 13:51:13 · 583 阅读 · 1 评论 -
HttpRunner3.x 源码解析(2)-main_run执行用例
当在终端运行输入httprunner run 目录或者文件名,则会调用main_run函数,并传入目录/文件名来执行测试用例。原创 2023-04-05 00:15:25 · 578 阅读 · 0 评论 -
HttpRunner3.x(9) 测试报告
要使Allure侦听器能够在测试执行期间收集结果,只需添加--alluredir选项,并提供指向应存储结果的文件夹的路径。插件随HttpRunner一期安装。当你运行测试用例想生成html报告时,可以在命令行中添加。受益于pytest的集成,HttpRunner v3.x可以利用pytest所有插件,包括。要在测试完成后查看实际报告,您需要使用Allure命令行实用程序从结果生成报告。如果想创建一个独立的、更加方便共享测试结果的html报告,可以在命令行中添加。:在指定目录中生成“魅力”报告(可能不存在)原创 2023-03-29 20:42:17 · 340 阅读 · 0 评论 -
HttpRunner3.x(8) 环境变量
在 HttpRunner 中内置了函数 environ(简称 ENV),可用于在 YAML/JSON 脚本中直接引用环境变量。注意:httprunner v2.x支持,但是v3.x暂不支持以下方式运行指定.env。如图,在.env中填写username和password。注意:.env不允许有空行,可以注释掉不需要的变量。指定.env执行暂未找到运行方法。.env 文件设置环境变量。原创 2023-03-29 20:22:42 · 138 阅读 · 0 评论 -
HttpRunner3.x(7) hook函数
HttpRunner 从 1.4.5 版本开始实现了全新的 hook 机制,可以在请求前和请求后调用钩子函数。原创 2023-03-28 23:24:57 · 319 阅读 · 0 评论 -
HttpRunner3.x(6)参数化数据驱动
对于没有现成参数列表,或者需要更灵活的方式动态生成参数的情况,可以通过在 debugtalk.py 中自定义函数生成参数列表,并在 YAML/JSON 引用自定义函数的方式。例如,若需对 username 进行参数化数据驱动,参数取值范围为tester,tester1,tester2,tester3,那么就可以在 debugtalk.py 中定义一个函数,返回参数列表。return [然后,在 YAML/JSON 的 parameters 中就可以通过调用自定义函数的形式来指定数据源。原创 2023-03-27 23:05:38 · 412 阅读 · 0 评论 -
HttpRunner3.x(5)变量的优先级
有几种不同类型的变量,优先级可能会令人困惑。避免混淆的最好方法是使用不同的变量名。但是,如果必须使用相同的变量名,则应该了解优先级策略。原创 2023-03-27 22:22:32 · 100 阅读 · 0 评论 -
HttpRunner3.x(4)测试用例结构
在httprunner中,测试用例有三层结构,分别是1.测试集合testsuite,对应一个目录,包含一个或多个测试用例文件。2.测试用例testcase,对应单个文件,可以是yaml/json/python文件,包含一个或多个测试步骤。3.测试步骤teststep,单个步骤。一般采用yaml文件格式来写用例。原创 2023-03-16 23:11:46 · 579 阅读 · 1 评论 -
HttpRunner3.x(3)创建项目
如图,debugtalk里写了sum_two函数,yaml文件中采用${sum_two(1, 2)}方式调用,sum_v的值即为3。.env文件为环境文件,可以在里面写账号token,url等信息,在yaml文件中读取使用。同时产生了两个py结尾的文件,其实编写yaml文件,都会转换为py文件,并以py文件运行测试用例。例如,可以在debugtalk里写登录请求,获取到token,在yaml文件中使用。该文件可以写一些通用的函数,在yaml文件中可以读取使用。可以看到有两条用例执行通过。原创 2023-03-14 23:04:55 · 340 阅读 · 0 评论 -
基于HttpRunner4.0的接口自动化测试实践
对于HttpRunner工具,在我上家公司是使用HttpRunner1.0版本为基础二次开发成公司通用接口自动化框架并且集成到测试管理平台,直到现在也一直服务公司内部业务测试,不仅可以快速进行需求自动化测试、还可以进行回归测试验证服务框架升级等需求。回想前几年,当时好用的接口自动化框架和平台并不多,接口自动化框架大多数都是基于pytest写的纯代码的形式的,还是需要测试人员有代码能力,当时我们急需要一款不用写代码,并且可以集成到CICD上。创建广告接口为例子,根据接口请求参数定义好参数。转载 2023-02-18 22:43:34 · 1254 阅读 · 0 评论 -
HttpRunner 3.x接口自动化: 全面讲解如何落地实战
以后会搞个小小的专题,专门分析一下市面上的用例录制,转换,回放等工具的用法及对比,敬请期待。本次依旧使用pity作为我们的测试网站,建议优先本地部署,方便调试以及后续的各种练习。下面对上面的参数化方式进行举例,验证(为了讲解方便,未使用环境变量的参数化方式)。【注】step-步骤,parameter-参数,valuables-全局定义的。成功的将用例中的项目由aaa修改为bbb,说明我们的hook调用成功了。关于用例套件也涉及到变量的问题,此处只给出结论,以后再讲吧,写不动了。转载 2023-02-18 22:49:12 · 784 阅读 · 0 评论 -
基于 HttpRunner 的接口自动化测试平台框架
6、新增用例,遵循HtttpRuunner脚本规范,可以跨项目,跨模块引用用例,支持拖拽排序,动态添加和删减,极大地方便了场景组织, HttpRunner用例编写很灵活。项目和模块列表可以选择单个,或者批量运行,可以选择运行环境,配置等,支持同步、异步选择,异步支持自定义报告名称,默认时间戳命名。2、登陆后默认跳转到首页,左侧为菜单栏,上排有快捷操作按钮,当前只简单的做了项目,模块,用例,配置的统计。7、创建超级用户,用户后台管理数据库,并按提示输入相应用户名,密码,邮箱。如不需用,可跳过此步骤。转载 2023-02-18 22:53:56 · 266 阅读 · 0 评论 -
HttpRunner 2.x接口自动化实战
安装过程中出现下方的报错,可以执行这个命令解决。执行完,再重新安装HttpRunner。5.httprunner用例关联-testcase。4.httprunner环境变量-env。debugtal驱动-testsuit。3.httprunner登录-api。6.httprunner用例数据驱动。使用csv驱动-testsuit。登录-----> 查询项目列表。登录+查询-testcase。直接参数化-testsuit。建议本地启动项目进行测试。添加env通过的展示。去掉env报错的情况。转载 2023-02-18 22:58:22 · 226 阅读 · 0 评论 -
httprunner4测试报告
(hrp pytest相当于httprunner3中的hrun命令,在4中也可以直接用)这种方式会生成py文件,然后根据py文件调用pytest执行,生成allure报告。这里的文件名支持json文件,yaml文件,及文件夹名字。前提:安装allure,安装allure pytest。hrp run用go引擎执行API,不会生成py文件。也可以写一个main文件,然后运行。原创 2023-02-24 10:36:31 · 806 阅读 · 5 评论