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 实现接口自动化的更多相关文章

  1. 基于Python+Requests+Pytest+YAML+Allure实现接口自动化

    本项目实现接口自动化的技术选型:Python+Requests+Pytest+YAML+Allure ,主要是针对之前开发的一个接口项目来进行学习,通过 Python+Requests 来发送和处理H ...

  2. pytest+allure生成接口自动化测试报告

    准备环境 1.安装pytest pip install pytest -i http://pypi.douban.com/simple pytest-ordering pytest.main([ &q ...

  3. Python+Pytest+Allure+Git+Jenkins接口自动化框架

    Python+Pytest+Allure+Git+Jenkins接口自动化框架 一.接口基础 接口测试是对系统和组件之间的接口进行测试,主要是效验数据的交换,传递和控制管理过程,以及相互逻辑依赖关系. ...

  4. 接口自动化框架(Pytest+request+Allure)

    前言: 接口自动化是指模拟程序接口层面的自动化,由于接口不易变更,维护成本更小,所以深受各大公司的喜爱. 接口自动化包含2个部分,功能性的接口自动化测试和并发接口自动化测试. 本次文章着重介绍第一种, ...

  5. 接口自动化框架2-升级版(Pytest+request+Allure)

    前言: 接口自动化是指模拟程序接口层面的自动化,由于接口不易变更,维护成本更小,所以深受各大公司的喜爱. 第一版入口:接口自动化框架(Pytest+request+Allure) 本次版本做了一些升级 ...

  6. 使用HttpRunner3+Allure+Jenkins实现Web接口自动化测试

    陆续给不同项目做了Web接口自动化测试,在尝试不同方法的同时会有新的体会.最近用到了HttpRunner3,本文将记录使用HttpRunner3+Allure+Jenkins在项目中快速实现Web接口 ...

  7. RobotFrameWork环境搭建(基于HTTP协议的接口自动化)

    1. 前言 接着上一篇<RobotFramework框架系统课程介绍>,本篇主要介绍一下在基于RobotFramework框架开展接口自动化前,前期的环境如何搭建,正所谓”工欲善其事,必先 ...

  8. 【接口自动化】Python+Requests接口自动化测试框架搭建【三】

    经过上两篇文章的讲解,我们已经完成接口自动化的基础框架,现在开始根据实际项目丰满起来. 在PyCharm中新建项目,项目工程结构如下: config:配置文件夹,可以将一些全局变量放于配置文件中,方便 ...

  9. 接口自动化测试之httprunner初探

    ❝ 今天来介绍一个python的一个开源项目:httprunner,接口自动化工具.第一次输入,难免有不周到的地方,轻喷~ ❞ 介绍: HttpRunner是一个简单优雅但功能强大的 HTTP(S) ...

  10. 接口自动化 - pytest-fixture -scope作用范围

            接口自动化-pytest中的fixture - scope                介绍 fixture文章中介绍的比较少,同学们可以去搜索下fixture的详解或者去看看源码 ...

随机推荐

  1. C#学习之详解C#Break ,Continue, Return

    C#编程语法中break ,continue, return这三个常用的关键字的学习对于我们编程开发是十分有用的,那么本文就向你介绍break ,continue, return具体的语法规范. C# ...

  2. 【帆吖】Java学习零基础22

    Java数组

  3. linux sed 编辑

    只打印不修改内容 sed -n 's/sa/sa123/g' 1.txt  不加n是默认全部输出的意思 sed -n '1p' 1.txt  打印莫一行 sed a i c 表示追加 插入和替换 se ...

  4. [imx6ull] 源码下载

    uboot git clone https://source.codeaurora.org/external/imx/uboot-imx cd uboot-imx make distclean mak ...

  5. ngix安装与使用

    主要是nginx的安装使用, 至于原理 1. 安装nginx(以及两个tomcat) 2. 使用nginx(测试负载均衡) 想要搭建的测试环境, 1.两个tomcat, 端口分别是80和8090(因为 ...

  6. 基于 Agora SDK 实现 Windows 端的一对一视频通话(基于3.6.2版本)

    前提条件 Microsoft Visual Studio 2019 或以上版本 支持 Windows 7 或以上版本的 Windows 设备 有效的 Agora 账户(免费注册) 注:如果你的网络环境 ...

  7. 【LeetCode贪心#12】图解监控二叉树(正宗hard题,涉及贪心分析、二叉树遍历以及状态转移)

    监控二叉树 力扣题目链接(opens new window) 给定一个二叉树,我们在树的节点上安装摄像头. 节点上的每个摄影头都可以监视其父对象.自身及其直接子对象. 计算监控树的所有节点所需的最小摄 ...

  8. Go语言:利用 TDD 逐步为一个字典应用创建完整的 CRUD API

    前言 在数组这一章节中,我们学会了如何按顺序存储值.现在,我们再来看看如何通过键存储值,并快速查找它们. Maps 允许你以类似于字典的方式存储值.你可以将键视为单词,将值视为定义. 所以,难道还有比 ...

  9. window.onload / onscroll/onresize 事件

    onload当文档加载完成后执行一些操作 window.onload = function(){ console.log("页面加载完成") } onscroll当页面发生滚动时执 ...

  10. MySQL相关知识点思维导图整理

    MySQL相关知识点思维导图整理 Xmind思维导图下载地址: 蓝奏云:https://shuihan.lanzoui.com/iXZw7frkn5a