3.httprunner-extract/.env/Testcase】的更多相关文章

参数关联-extract 场景:上一个接口的返回值,传给下一个接口当请求参数 extract:提取变量 $变量名 :引用变量 假设我们有如下场景 用户A登录之后,返回值返回用户UID,我们需要查询该用户的用户信息,需要用到登录接口返回值的uid 那我们先请求登录接口,然后使用extract提取uid,获取用户信息接口里面我们再引用uid变量 config: name: 登录用例 base_url: http://xxx.com teststeps: - name: step-登录 request…
前言 写用例之前,我们应该熟悉API的详细信息.建议使用抓包工具Charles或AnyProxy进行抓包. har2case 我们先来了解一下另一个项目har2case 他的工作原理就是将当前主流的抓包工具和浏览器都支持将抓取得到的数据包导出为标准通用的 HAR 格式(HTTP Archive),然后 HttpRunner 将 HAR 格式的数据包转换为YAML/JSON格式的测试用例文件. 这里使用charles抓取百度首页进行演示 选中百度请求,右键点击Export Session,导出到/…
一.官方首推pytest格式 上篇文章我们知道了,httprunner可以支持三种格式的用例,分别是pytest.yaml和json.yaml和json是以前的版本所使用的用例格式,但是在3.x版本上,官方强烈建议使用的是pytest格式的用例. 上图是来自官方的用例格式关系图,可以看出来,httprunner再对于第三方导出的har文件进行了转换处理,有的人喜欢转换成json,有的人喜欢转换成yaml.但是最终,还是通过解析json格式的文件,生成pytest的python文件. 既然最后都是…
在正式手动编写case之前,我们可以先来熟悉下httprunner的录制生成用例功能. 用postman的童鞋都知道,里面有个功能可以将接口转换成代码,可以直接copy过来使用,提升case编写效率. 那httprunner的录制生成用例功能又是怎么回事呢? 一.har2case 其实,这都要依托于另一个独立的项目-har2case. 原理就是当前主流的抓包工具和浏览器都支持将抓取得到的数据包导出为标准通用的 HAR 格式(HTTP Archive),然后 HttpRunner 将 HAR 格式…
loader.py 这个文件中主要是对yaml,json用例加载转换成用例处理, 预置函数加载成方法字典,路径加载等 可用资料 [importlib]. https://docs.python.org/zh-cn/3/library/importlib.html [funcitons]. https://docs.python.org/zh-cn/3/library/functions.html 借助impotlib 动态导入module, vars内置函数解析module中的信息,并将其处理和…
需求 不知不觉,web 开发已经进入 “微服务”.”分布式” 的时代,致力于提供通用 Java 开发解决方案的 Spring 自然不甘人后,提出了 Spring Cloud 来扩大 Spring 在微服务方面的影响,也取得了市场的认可,在我们的业务中也有应用. 前些天,我在一个需求中也遇到了 spring cloud 的相关问题.我们在用的是 Spring Cloud 的 config 模块,它是用来支持分布式配置的,原来单机配置在使用了 Spring Cloud 之后,可以支持第三方存储配置和…
在PyCharm中打开examples/httpbin/basic_test.py: 首先映入眼帘的是左上角那个绿色小箭头,点了一下,可以直接运行,意味着HttpRunner是能够直接被pytest驱动运行的,这可就有点意思了,难道HttpRunner的底层是pytest?带着这个疑问我全局搜索了一下pytest: 在cli.py文件中,如果参数是run,那么会执行pytest.main(["h"]),难道真是我猜测的这样?在basic_test.py最后有两行代码: if __nam…
前言 一般来说,在进行实际应用的开发过程中,应用会拥有不同的运行环境,通常会有以下环境: 本地开发环境 测试环境 生产环境 在不同环境中,我们可能会使用不同的数据库或邮件发送驱动等配置,这时候则需要通过 .env 文件来针对不同的运行环境作不同的设置. 环境变量 在自动化测试中,有时需要借助环境变量实现某些特定的目的,常见的场景包括: 切换测试环境 切换测试配置 存储敏感数据(从信息安全的角度出发) Windows系统中使用 set 命令设置环境变量和值,接下来设置以下变量 host = htt…
在之前的demo过程中,已经运行过testcase了,那这篇就也来汇总一下,运行case相关的知识点. 一.运行testcase的几种场景 1. 运行单个case 通常单个case的话我会在编辑器里用main方法运行,不过也可以用命令行运行,看你喜欢. from httprunner import HttpRunner, Config, Step, RunRequest class TestCaseRequestWithGetUserName(HttpRunner): config = ( Co…
前言 有些接口返回的并不是json格式的内容,返回的是html或者xml格式的内容,这种就不能用前面的 content.的方法去提取了. httprunner 支持正则表达式提取(extract)参数,也支持正则表达式校验(validate) 返回html 比如我请求博客园的首页https://www.cnblogs.com/yoyoketang/,返回的是应该html格式的内容 接下来我要提取html里面的 <title>上海-悠悠 - 博客园</title> 中间的文字 上海-…