当前位置: 首页 > news >正文

信息平台网站模板牟平建设企业网站

信息平台网站模板,牟平建设企业网站,在discuz做网站,泗阳建设局网站httprunner框架#xff08;上#xff09; 一、什么是Httprunner#xff1f; 1.httprunner是一个面向http协议的通用测试框架#xff0c;以前比较流行的是2.X版本。 2.他的思想是只需要维护yaml/json文件就可以实现接口自动化测试#xff0c;性能测试#xff0c;线上监…httprunner框架上 一、什么是Httprunner 1.httprunner是一个面向http协议的通用测试框架以前比较流行的是2.X版本。 2.他的思想是只需要维护yaml/json文件就可以实现接口自动化测试性能测试线上监控持续集成。 3.架构图 二、httprunner的设计理念 1.充分复用开源项目不追求重复的造轮子而是将市面上强大的轮子转成战车降低框架的开发成本以及学习成本。 2.遵循约定大于临时配置的准则。合同考勤 3.配置文件组织测试用例。 三、httprunner环境安装 1.python环境3.6.2 2.安装httprunnerpip install httprunner 验证hrun -V 3.必须知道的5个httprunner的命令 httprunner主命令用于所有功能 hrun用于运行yaml/json/pytest测试用例。 hmake用于将yaml/json测试用例转化成pytest文件。 har2case用于将har文件转化成yaml/json/pytest测试用例。 locusts用于性能测试 四、httprunner快速上手 1.使用抓包工具fiddler、charles操作一遍抓包。导出har文件。 2.通过har2case命令把har文件转化成yaml/json/pytest文件格式。 har2case get.har 生成pytest文件格式的测试用例 har2case get.har -2y 生成yaml格式的测试用例 har2case get.har -2j 生成json格式的测试用例 运行 hrun get.yml hrun get.json hrun get_test.py 发现运行完成之后py文件里面的断言自动的去掉了说明不管是运行yml、json其实最终都会重新成py文件运行。 五、YAML测试用例结构分析 每一个测试用例都是一个list of dict字典列表结构其中包括config【配置】和teststeps【步骤】 [{},{},{}] yml文件内容介绍 cofig配置 name用例名称 variables:全局变量 是否开启https验证 teststeps步骤 name: /cgi-bin/token 步骤名称 request: 请求 headers: 请求头 Accept: */* Accept-Encoding: gzip, deflate, br Cache-Control: no-cache Connection: keep-alive Host: api.weixin.qq.com Postman-Token: 50f8bb1a-7826-49f8-835e-ec889063b7cc User-Agent: PostmanRuntime/7.28.0 method: GET 请求方式 params: 请求参数 appid: wx74a8627810cfa308 grant_type: client_credential secret: e40a02f9d79a8097df497e6aaf93ab80 url: https://api.weixin.qq.com/cgi-bin/token 请求路径 validate:断言 - eq: - status_code - 200 eq: -headers.Content-Type -application/json; encodingutf-8 六、接口关联 在request标签下加一个extract标签提取返回值通过content或body提取。 extract: aaa: content.access_token 然后通过$变量名使用 params: access_token: $aaa 七、动态参数通过debugtalk.py的热加载的方式实现。 第一步创建一个debugtalk.py文件然后再里面写一个函数。 第二步在yaml文件中通过${函数名()}的方式调用。 八、环境变量 开发环境测试环境线上环境。预发布环境。 在config下加入 base_url: 九、全局变量 config下的variables是全局变量 teststeps:下的variables是局部变量 - name: /cgi-bin/tags/update 有两种写法 1.换行的键值对 2.{}的方式 十、生成HTML格式的报告 hrun httprunners --htmlhttprunners/report.html 就是pytest里面pytest-html插件的报告一模一样。 httprunner框架中 一、httprunner常规的关键字详解 httprunner测试用例的结构 config配置 name:名称 variables全局变量 verifyhttps协议 base_url环境变量 teststeps步骤 name步骤名称 request请求 headers请求头 method请求方式 params参数 url请求路径 cookie:cookie信息 json:用于发送http请求正文 data:用于发送http请求正文 extract:提取通过content或body提取json提取器。支持正则表达式提取。 validate断言 eq相等 equals相等 str_eqstr(a)str(b) lt小于 le小于或等于 gt大于 ge大于或等于 contains包含 简化 name接口名称 request请求 headers请求头 method请求方式 data参数 url请求路径 cookie:cookie信息 extract:提取通过content或body提取json提取器。支持正则表达式提取。 validate断言 equals相等 str_eqstr(a)str(b) contains包含 二、httprunner接口自动化项目架构 先要切换到项目的根目录使用httprunner startproject 项目名没有虚拟环境 har存放har文件 reports存放报告 testcases:存放测试用例 api存放yml文件接口定义。 data:数据驱动 testsuites测试套件 .env存放环境变量 .gitignore 当你的项目使用git做版本控制的时候添加在此文件中的文件不会被git管理。 debugtalk,py实现热加载。 分层架构三层 1.接口定义层api为了更好的管理接口描述每个一个接口定义都应该尽量的能够单独运行。 2.测试用例层testcases 3.测试套件层testsuites 关系testcases调用api层使用api关键字testsuites调用testcases层使用 testcase关键字。 三、环境变量 环境变量可以写入.env文件 然后在api接口定义层里面使用${ENV(变量名)}获取环境变量。 httprunner框架下 一、httprunner如何实现数据驱动 3.X开始使用parameters定义数据源。应用于测试用例层。 第一种直接在脚本里面指定参数列表最简单。适合于参数比较少的情况。 1 config: 2  name: 测试用例 3  parameters: 4  appid‐grant_type‐secret‐assert_str: 5  ‐ [wx74a8627810cfa308,client_credential,e40a02f9d79a8097df497e6aaf9 3ab80,access_token] 6  ‐ [,client_credential,e40a02f9d79a8097df497e6aaf93ab80,errcode] 7  ‐ [wx74a8627810cfa308,,e40a02f9d79a8097df497e6aaf93ab80,errmsg] 8 teststeps: 9 ‐ name: 获得token鉴权码API 10  api: api/get_token.yml 第二种使用CSV文件适合于参数较大的情况。 1 config: 2  name: 测试用例 3  parameters: 4  appid‐grant_type‐secret‐assert_str: ${P(data/get_token_data.csv)} 5 teststeps: 6 ‐ name: 获得token鉴权码API 7  api: api/get_token.yml csv文件内容 1 appid,grant_type,secret,assert_str 2 wx74a8627810cfa308,client_credential,e40a02f9d79a8097df497e6aaf93ab8 0,access_token 3 ,client_credential,e40a02f9d79a8097df497e6aaf93ab80,errcode 4 wx74a8627810cfa308,,e40a02f9d79a8097df497e6aaf93ab80,errmsg 注意 1.csv文件中第一行必须放参数名称并且参数名称必须和测试用例里面的名称一致。 2.csv文件第二行放数据每一组数据占一行。 3.parameters指定的参数顺序可以不一致个数也可以不一致。 第三种使用函数生成数据适用于数据变化大的情况。 1 config: 2  name: 测试用例 3  parameters: 4  appid‐grant_type‐secret‐assert_str: ${get_token_data()} 5 teststeps: 6 ‐ name: 获得token鉴权码API 7  api: api/get_token.yml 函数代码 1 #生成数据 2 def get_token_data(): 3  return [ 4 {appid:wx74a8627810cfa308,grant_type:client_credential,secret:e4 0a02f9d79a8097df497e6aaf93ab80,assert_str:access_token}, 5  {appid: , grant_type: client_credential, secret: e40a02f9d79a 8097df497e6aaf93ab80,assert_str: errcode}, 6  {appid: wx74a8627810cfa308, grant_type: , secret: e40a02f9d79 a8097df497e6aaf93ab80,assert_str: errmsg} 7  ] 二、httprunner文件上传 前提条件需要安装如下两个包 pip install requests_toolbelt filetype pip install httprunner[upload] 三、如何生成allure报告 第一步 1.官网下载allure文件Releases · allure-framework/allure2 · GitHub 2.下载之后解压到非中文的目录 3.把bin路径配置到系统变量path中D:\BaiduNetdiskDownload\allure-2.13.7\allure-2.13.7\bin注意分号不要是中文的 第二步 安装allure报告pip install allure-pytest 验证allure --version 注意可能需要重启pycharm。 第三步 1.在reports目录下生成temps目录并且在temps目录下生产临时的json格式的临时报告。 1 os.system(hrun testsuites/test_suites.yml ‐‐alluredirreports/temps ‐‐clean‐alluredir) 加上--clean-alluredir表示每执行一次把原来的清除。 2.根据临时json报告生成allure报告 1 os.system(allure generate reports/temps ‐o reports/allures ‐‐clean) 加上--clean表示每执行一次把原来的清除。 四、接口自动化框架文件对应关系 一个接口对应一个yaml文件一个yaml文件对应一个csv文件。 优点相对来说比较成熟唯一的不需要写脚本。 缺点规则太难了小心翼翼报错机制不完善。有些功能不齐全。
http://www.w-s-a.com/news/446858/

相关文章:

  • 杂志社网站建设萧山区网站建设
  • 电商网站前端制作分工网站怎做百度代码统计
  • 免费的html大作业网站网站开发心得500字
  • 临时工找工作网站做美缝帮别人做非法网站
  • 深圳网站建设 设计创公司新昌网站开发
  • 唐山教育平台网站建设上海装修网官网
  • 一个公司做多个网站什么行业愿意做网站
  • 成都龙泉建设网站免费域名app官方下载
  • xss网站怎么搭建如何用wordpress站群
  • 怎样做网站外链supercell账号注册网站
  • 阿里巴巴网站是用什么技术做的哪些网站做推广比较好
  • 做网站go和python手机如何创网站
  • 网站开发进修网站做301将重定向到新域名
  • 公司网站开发费用账务处理ucenter wordpress
  • 六站合一的优势少儿编程机构
  • 软件开发与网站开发学做美食网站哪个好
  • 网站搜索 收录优化百度推广页面投放
  • 响应式网站的优点浙江省网站域名备案
  • 网站安全 扫描深圳被点名批评
  • 在哪个网站可以一对一做汉教网站优化策略
  • 龙岩做网站的顺企网宁波网站建设
  • 昆山网站建设河北连锁餐厅vi设计公司
  • 新蔡县住房和城乡建设局网站南昌租房网地宝网
  • 南宁做网站费用iis编辑网站绑定
  • 家用宽带做网站服务器建网站费用明细
  • 电商 网站 降低 跳出率 措施 效果书画院网站模板
  • 兰州移动官网网站建设上海工商网上公示系统
  • 在招聘网站里做电话销售免费空间可以上传网站吗
  • 梅州建站怎么做中国建设银行官网下载
  • 网站静态化设计广州网站备案方案