前言 前面几篇零散的学了一些httprunner的知识点,那么一个完整的 YAML/JSON 用例文件包含哪些关键字呢? 测试用例结构 在 HttpRunner 中,测试用例组织主要基于三个概念: 测试用例集(testsuite):对应一个文件夹,包含单个或多个测试用例(YAML/JSON)文件 测试用例(testcase):对应一个 YAML/JSON 文件,包含单个或多个测试步骤 测试步骤(teststep):对应 YAML/JSON 文件中的一个 test,描述单次接口测试的全部内容,包括…
前言 使用httprunner做接口测试过程中,在工作中会遇到这种场景,发现某个接口不稳定,想重复运行100次用例,甚至1000次,看成功率. yml脚本 - config: name: httpbin api test request: base_url: http://www.httpbin.org - test: name: get request request: url: /get method: GET validate: - eq: [status_code,200] 执行 hru…
前言 HttpRunner中,测试用例支持两种文件格式:YAML 和 JSON.两种格式的用例是完全等价的,对于相同的信息内容,使用 YAML /JSON 得到的测试结果和报告也是一致的. 本人环境:HttpRunner V1.5.8 YAML格式的用例 以某快递接口为例,这里以 YAML 格式进行说明(test_kuaidi.yml): - config: name: kuaidi100 api test request: base_url: http://www.kuaidi100.com…
前言 HttpRunner 在命令行中启动测试时,通过指定参数,可实现丰富的测试特性控制. 命令行参数CLI 使用 -h 查看相关命令行参数 hrun -h 参数名称 参数值 参数说明 -h, --help 不带参数 查看帮助信息 -V, --version 不带参数 查看版本号 --no-html-report 不带参数 不生成测试报告 --html-report-name HTML_REPORT_NAM 重命名html报告名称 --html-report-template HTML_REPO…
前言 在HttpRunner中,我们的测试用例都是写在 YAML/JSON 文件中,有时候我们想借助代码来实现某些较复杂的功能,但在 YAML/JSON 中是无法直接写代码来处理的,这个时候,我们可以借助 HttpRunner 中的辅助函数 debugtalk.py 来完成. HttpRunner使用文档中的说明: HttpRunner 的实现方式为,支持热加载的插件机制(debugtalk.py),可以在 YAML/JSON 中调用 Python 函数. 具体地做法,我们可以在测试用例文件的同…
前言 在之前的文章中,我们已经学习了 parameters 参数化,是在测试脚本中直接指定参数列表.这种方法简单易用,但如果我们的参数列表数据比较多,这种方法可能就不太适合了. 当数据量比较大的时候,我们希望可以把测试数据写到 CSV 文件中,然后直接引用 CSV 文件数据. 本人环境:HttpRunner V1.5.8 测试场景 登录接口文档说明:http://doc.nnzhp.cn/index.php?s=/6&page_id=12 我们继续以之前的登录接口来学习,如果直接在 YAML/J…
前言 在HttpRunner中,如果需要声明变量,可以通过关键字 variables 来完成,要引用声明的变量,则是通过 $+变量名 (如 $token )来实现.variables 可以在 config 和 test 中使用. 本人环境:HttpRunner V1.5.8 测试场景 登录接口文档说明:http://doc.nnzhp.cn/index.php?s=/6&page_id=12 我们将继续以之前的登录接口来学习,之前的用例是这样的: - config: name: extract…
前言 在HttpRunner中,我们可通过extract提取数据,当响应结果为 JSON 结构,可使用 content 结合 . 运算符的方式,如 content.code,用起来十分方便,但如果响应结果为 text/html 结构时,便不能这么用了. 这时候,我们能不能使用正则表达式来提取呢?答案是肯定的. 本人环境:HttpRunner V1.5.8 测试场景 在这里,我将访问 TesterHome 的首页,通过正则表达式来提取响应数据中的 title标题 ,下面是在浏览器中访问和Fiddl…
一.官方首推pytest格式 上篇文章我们知道了,httprunner可以支持三种格式的用例,分别是pytest.yaml和json.yaml和json是以前的版本所使用的用例格式,但是在3.x版本上,官方强烈建议使用的是pytest格式的用例. 上图是来自官方的用例格式关系图,可以看出来,httprunner再对于第三方导出的har文件进行了转换处理,有的人喜欢转换成json,有的人喜欢转换成yaml.但是最终,还是通过解析json格式的文件,生成pytest的python文件. 既然最后都是…
一.简介 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份YAML/JSON脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求. 核心特性: 继承 Requests 的全部特性,轻松实现 HTTP(S) 的各种测试需求 测试用例与代码分离,采用YAML/JSON的形式描述测试场景,保障测试用例具备可维护性 测试用例支持分层机制,充分实现测试用例的复用 测试用例支持参数化和数据驱动机制 使用 skip 机制实现对测试用例的分组执行控制 支持热…