Win HttpRunner3 + Allure 实现接口自动化
HTTPRunner3介绍:
HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架,只需编写维护一份 YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。
HTTPRunner3核心功能介绍:
○ 集成了requests库强大功能,在处理https请求上更加优雅人性化(这意味着httprunner(3.x)工具本身的性能和稳定性会更高)
○ 提供了yaml,json的case编写格式,并以pytest方式,更编译和优雅的运行(比较方便的编辑转换后python语言的测试case)
○ 利用har的优势,方便的录制和导出并生成测试case
○ 提供了一些列的机制支持一些复杂的测试场景
○ 通过debugtalk.py插件支持自定义函数的编写
○ 通过jmespath,方便对返回的json进行校验
○ 通过pytest的强大插件生态补充了httprunner的功能
○ 通过allure,让测试报告更加美观,可读性更强
○ 通过和locust的结合,很方便利用httprunner进行接口的性能测试
○ httprunner以命令行方式运行,也更方便接入CI/CD
一、HTTPRunner3安装
1.进入File → Settings → Project → Python Interpreter

2.执行下面命令安装
pip3 install httprunner
二、HTTPRunner3使用
1.创建目录(脚手架)
在Terminal 输入 httprunner startproject bkydm

执行完成项目的目录结构

2.用例的生成
HttpRunner提供了录制工具,能够将har文件转换成pytest类型或者yaml/json类型的用例。而har文件可以通过抓包软件获得
3.使用Charles获取har文件
选择需要获取的接口,右键点击Export Session,文件类型选择.har格式保存


4.har文件转测试用例
在Terminal 输入 har2case bkydm/har/bkyts.har

执行会完成 出现 bkyts_test.py 文件

将 bkyts_test.py 文件移动到testcases文件夹下

5.运行用例
在Terminal 输入 pytest bkydm/testcases/bkyts_test.py

运行完成后,会在logs文件夹下生成对应的log文件,里面记录了测试过程及结果

三、Allure安装
1.执行下面命令安装
pip3 install allure-pytest
注: 也可通过Pycharm(File → Settings → Project → Python Interpreter)进行搜索安装
2.下载地址
https://github.com/allure-framework/allure2/releases

解压后将allure/bin目录添加至系统环境变量中
四、Allure使用
1.生成测试报告,执行下面两个命令
在Terminal 输入 pytest bkydm/testcases/bkyts_test.py --alluredir=bkydm/reports/allure_results

在Terminal 输入 allure generate --clean bkydm/reports/allure_results -o bkydm/reports/allure_reports

生成结果展示

2.测试报告查看


至此配置完成
五、补充个run.py
import pytest
import os if __name__ == '__main__':
pytest.main(["testcases",
"--alluredir", "reports/allure_results"])
os.system(r"allure generate --clean reports/allure_results -o reports/allure_reports")

to be continued...
Win HttpRunner3 + Allure 实现接口自动化的更多相关文章
- 基于Python+Requests+Pytest+YAML+Allure实现接口自动化
本项目实现接口自动化的技术选型:Python+Requests+Pytest+YAML+Allure ,主要是针对之前开发的一个接口项目来进行学习,通过 Python+Requests 来发送和处理H ...
- pytest+allure生成接口自动化测试报告
准备环境 1.安装pytest pip install pytest -i http://pypi.douban.com/simple pytest-ordering pytest.main([ &q ...
- Python+Pytest+Allure+Git+Jenkins接口自动化框架
Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...
- 接口自动化框架(Pytest+request+Allure)
前言: 接口自动化是指模拟程序接口层面的自动化,由于接口不易变更,维护成本更小,所以深受各大公司的喜爱. 接口自动化包含2个部分,功能性的接口自动化测试和并发接口自动化测试. 本次文章着重介绍第一种, ...
- 接口自动化框架2-升级版(Pytest+request+Allure)
前言: 接口自动化是指模拟程序接口层面的自动化,由于接口不易变更,维护成本更小,所以深受各大公司的喜爱. 第一版入口:接口自动化框架(Pytest+request+Allure) 本次版本做了一些升级 ...
- 使用HttpRunner3+Allure+Jenkins实现Web接口自动化测试
陆续给不同项目做了Web接口自动化测试,在尝试不同方法的同时会有新的体会.最近用到了HttpRunner3,本文将记录使用HttpRunner3+Allure+Jenkins在项目中快速实现Web接口 ...
- RobotFrameWork环境搭建(基于HTTP协议的接口自动化)
1. 前言 接着上一篇<RobotFramework框架系统课程介绍>,本篇主要介绍一下在基于RobotFramework框架开展接口自动化前,前期的环境如何搭建,正所谓”工欲善其事,必先 ...
- 【接口自动化】Python+Requests接口自动化测试框架搭建【三】
经过上两篇文章的讲解,我们已经完成接口自动化的基础框架,现在开始根据实际项目丰满起来. 在PyCharm中新建项目,项目工程结构如下: config:配置文件夹,可以将一些全局变量放于配置文件中,方便 ...
- 接口自动化测试之httprunner初探
❝ 今天来介绍一个python的一个开源项目:httprunner,接口自动化工具.第一次输入,难免有不周到的地方,轻喷~ ❞ 介绍: HttpRunner是一个简单优雅但功能强大的 HTTP(S) ...
- 接口自动化 - pytest-fixture -scope作用范围
接口自动化-pytest中的fixture - scope 介绍 fixture文章中介绍的比较少,同学们可以去搜索下fixture的详解或者去看看源码 ...
随机推荐
- Manage your references to .Net assemblies Dynamics 365 for Operations VS projects
(Dynamics 365 for Operations was previously known as the New Dynamics AX) Dynamics 365 for Operation ...
- revit转tileset 3dmax转tileset cesium展示
使用revit软件导出fbx模型: 使用glTFExport导出gltf模型,导出的gltf模型具有属性.但是此处导出gltf模型,不是为了在cesium中加载该gltf模型,主要目的是获取组件属性信 ...
- 转发:基于Lerna打造多包管理最佳实践之道
最近在看vue-cli的源码部分,注意到这一个仓库下维护了多个package,很好奇他是如何在一个repo中管理这些package的. 我们组现在也在使用组件库的方式维护项目间共用的业务代码.有两个组 ...
- python之tk学习,闲鱼搜索-小记
(如想转载,请联系博主或贴上本博地址) 编程,逻辑,总是让人如痴如醉. 下面进入正题. 火热的天气配上火热的python,python的入门友好性让门外汉们都看到了希望.当然自己写的程序如果没有GUI ...
- What Are You Weighting For?
A basic strength routine can change your life Strength training isn't just about getting six-pack ab ...
- (转)codeblocks 使用研究
原帖:http://github.tiankonguse.com/blog/2014/10/11/codeblocks-shutcut.html 使用前 使用 codeblocks 前肯定是下载安装 ...
- web目录扫描工具
在对Web网站进行审计时,首先我们会对进场出现的/admin和robots.txt等信息和目录进行初步的审计获取重要的信息,但是手动猜测目录过于缓慢,使用工具能够迅速的爆破出目录 目录爆破取决于字典的 ...
- 驱动开发:配置Visual Studio驱动开发环境
在正式开始驱动开发之前,需要自行搭建驱动开发的必要环境,首先我们需要安装Visual Studio 2013这款功能强大的程序开发工具,在课件内请双击ISO文件并运行内部的vs_ultimate.ex ...
- 自己动手从零写桌面操作系统GrapeOS系列教程——16.封装打印字符串函数
学习操作系统原理最好的方法是自己写一个简单的操作系统. 在上一讲中我们向屏幕打印字符串"GrapeOS"用了十几行汇编代码,如果要输出的字符比较多,这种方法太繁琐了.本讲我们将打印 ...
- Java面试——消息队列
一.消息队列的使用场景 ☞ 以下介绍消息队列在实际应用常用的使用场景.异步处理.应用解耦.流量削锋和消息通讯四个场景.[1]异步处理:场景说明:用户注册后,需要发注册邮件和注册短信. 引入消息队列后 ...