HttpRunner 2.x (一)环境与简介
作者:互联网
1、HttpRunner简介
httprunner是一款面向HTTP(s)协议的通用开源测试框架,只需要编写维护一份YAML/JSON脚本,
既可实现自动化测试,持续集成等多种测试需求。
可支持的接口协议:HTTP(S)
不支持的接口协议: websocket dubbo 等其他
2、HttpRunner与其他框架对比有哪些优势
httprunner的优势在于上手容易(不同太多代码量,也不用考虑代码数据分类)
只需要维护YMAL/JSON脚本即可实现接口自动化
当然复杂的场景需要借助 debugtalk.py写辅助函数完成
3、 HttpRunner框架原理(基于requests库发送请求)
4、HttpRunner主要特性
4.1:继承Reauests的全部特性,轻松实现HTTP(S)的各种测试需求
4.2:采用YMAL/JSON的形式面试测试场景,保证测试用例描述的统一性和可维护性
4.3:借用辅助函数(debugtalk.py),在测试脚本中轻松实现复杂的动态计算逻辑
4.4:支持完善的测试用例分层机制,充分实现测试用例的复用
4.5:测试前后支持完善的hock机制
4.6:响应结果支持丰富的校验机制
4.7:基于HAR实现接口录制和用例生成case(har2case)
4.8:结合locust框架,无需额外的工作即可实现分布式性能测试
4.9:执行往事采用CLI调用,可与Jenkins等持续集成工具完美结合
4.10:测试结果统计报告简介清晰,附带详尽统计信息和日志记录
4.11:极强的可扩展性,轻松实现二次开发和WEB平台化
5、HttpRunner 用例展示--YAML格式
name: 媒体充值-正常充值 base_url: ${ENV(base_url)} variables: applicationType: 0 processType: 0 contractId: '2969995' supplierContractId: '2970009' payPort: '2140600' detailList: - accountId: '1434799031334154242' accountCurrencyRecharge: '1' fileList: [ ] reason: API自动化测试 request: url: **** method: POST headers: content-type: application/json cookie: XXH-SSO-TOKEN=$token json: applicationType: $applicationType processType: $processType contractId: $contractId supplierContractId: $supplierContractId payPort: $payPort detailList: - accountId: '1434799031334154242' accountCurrencyRecharge: '1' fileList: $fileList reason: $reason validate: - eq: [status_code, 200]
6、HttpRunner 用例展示--JSON格式
{ "name": "媒体充值-正常充值", "base_url": "${ENV(base_url)}", "variables": { "applicationType": 0, "processType": 0, "contractId": "2969995", "supplierContractId": "2970009", "payPort": "2140600", "detailList": [ { "accountId": "1434799031334154242", "accountCurrencyRecharge": "1" } ], "fileList": [], "reason": "API自动化测试" }, "request": { "url": "*****", "method": "POST", "headers": { "content-type": "application/json", "cookie": "XXH-SSO-TOKEN=$token" }, "json": { "applicationType": "$applicationType", "processType": "$processType", "contractId": "$contractId", "supplierContractId": "$supplierContractId", "payPort": "$payPort", "detailList": [ { "accountId": "1434799031334154242", "accountCurrencyRecharge": "1" } ], "fileList": "$fileList", "reason": "$reason" } }, "validate": [ { "eq": [ "status_code", 200 ] } ] }
标签:HttpRunner,简介,环境,fileList,reason,测试,processType,contractId 来源: https://www.cnblogs.com/jiliangceshi/p/15558172.html