认识一下~接口开源框架--httprunner(一)
2021-02-06 14:15
标签:利用 windows bsp 环境变量 image get请求 eve min 逻辑运算 接口开源框架--httprunner 简介 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架, 只需编写维护一份 YAML/JSON 脚本,即可实现自动化测 试、性能测试、线上监控、持续集成等多种测试需求。 安装 安装环境 HttpRunner 是一个基于 Python 开发的测试框架,可以运行在 macOS、Linux、Windows 系统平台上。 安装方法 pip3 install httprunner==2.5.7 安装完后利用 :hrun -V 查看版本,出来版本则代表安装成功 建议使用2.5.7稳定版本,3版本文档未更新,使用起来比较费力~ 使用准备 准备一份接口操作文档,如果没有操作文档,则可以通过 Charles Proxy 或者 Fiddler 这类网络抓包工具进行抓包分析来了解接口的请求和响应细节。 httprunner的主要文件格式 YAML/JSON(必须):测试用例文件,存储接口测试相关信息 debugtalk.py(可选):存储项目中逻辑运算辅助函数 该文件存在时,将作为项目根目录定位标记,其所在目录即被视 为项目工程根目录 该文件不存在时,运行测试的所在路径(CWD)将被视为项目工 程根目录 .env(可选):存储项目环境变量,通常用于存储项目敏感信息 .csv(可选):项目数据文件,用于进行数据驱动 reports:默认生成测试报告的存储文件夹 测试用例结构 • 每个 YAML/JSON 文件对应一个测试用例(testcase) • 每个测试用例为一个list of dict结构,其中可能包含全局配置项( config)和若干个测试步骤(test) • config 为全局配置项,作用域为整个测试用例 • test 对应单个测试步骤,作用域仅限于本身 用例格式 通常一个脚本文件里面有如下模块: - config - test - test 即:全局配置、用例、用例 config模块里面定义的是整个文本测试集的变量,即全局变量、test模块里面定义的是具体接口请求,对应单个测试步骤(teststep),测试用例存在顺序关系,运行时将从前往后依次运行各个测试步骤 举例: 以微信公众号获取token接口为例,新建一个yaml文件,命名为get_token.yaml config模块 name 本用例集名称 request 请求全局变量,包括base_url(公共host)、headers等 base_url 全局公共host,也可以不定义,用例中写全url即可 以上全局配置,除了name,其他都是非必要的,根据需要添加。 parameters 全局参数,用于实现数据化驱动,作用域为整 个用例。 variables 定义的全局变量,作用域为整个用例 output 整个用例输出的参数列表,可输出的参数包括公共的 variable 和 extract 的参数; 在 log-level 为 debug 模 式下,会在 terminal 中打印出参数内容 test模块 name 本条测试用例的名字 request HTTP 请求的详细内容 variables 测试步骤中定义的变量,作用域为当前测试步骤 extract 从当前 HTTP 请求的响应结果中提取参数,并保存到参数变量中(例如 token),后续测试用例可通过$token的形式进行引用 validate 测试用例中定义的结果校验项,作用域为当前测试用例,用于实现对当前测 试用例运行结果的校验 setup_hooks 在 HTTP 请求发送前执行 hook 函数,主要用于准备工作 teardown_hooks NO list 在 HTTP 请求发送后执行 hook 函数,主要用于测试后的清理工 teardown_hooks 在 HTTP 请求发送后执行 hook 函数,主要用于测试后的清理工作 request关键词 headers:请求头部信息 method: 请求方式 url:请求地址 host:请求主机地址 params:GET请求参数 data:表单形式的参数 json:json格式的参数 运行方式 基于之前生成的json、yaml文件,通过命令行终端cd到用例所在目录,执行hrun 用例名称即可。 运行yaml文件测试用例 运行后可查看测试报告数据 可查看详细请求和返回信息 注意: test的执行顺序是自上而下执行,重点在于理解HttpRunner的分层结构以及包含关系 认识一下~接口开源框架--httprunner(一) 标签:利用 windows bsp 环境变量 image get请求 eve min 逻辑运算 原文地址:https://www.cnblogs.com/HMeier/p/13111742.html
上一篇:php 重定向
文章标题:认识一下~接口开源框架--httprunner(一)
文章链接:http://soscw.com/index.php/essay/51758.html