HttpRunner介绍

HttpRunner简介:

  HttpRunner 是一款面向HTTP(S) 协议的通用测试框架,只需编写维护一份YAML/JSON 脚本,即可实现自动化测试、性能测试、线上监控、持续集成等多种测试需求。

  作者李隆之前是大疆的测试开发工程师,项目起源于大疆内部的测试需求,之后转为开源项目。

HttpRunner运行环境:

1、HttpRunner 是一个基于Python 开发的测试框架,可以运行在macOS、Linux、Windows 系统平台上。

2、Python 版本:HttpRunner 支持Python 3.4 及以上的所有版本,并使用Travis-CI 进行了持续集成测试,测试覆盖的版本包括2.7/3.4/3.5/3.6/3.7。虽然HttpRunner 暂时保留了对Python 2.7 的兼容支持,但强烈建议使用Python 3.4 及以上版本。

3、操作系统:推荐使用macOS/Linux。

HttpRunner设计理念:

  • 充分复用优秀的开源项目,不追求重复造*,而是将强大的*组装成战车
  • 遵循  约定大于配置  的准则
  • 在框架功能中融入自动化测试最佳工程实践
  • 追求投入产出比,一份投入即可实现多种测试需求

HttpRunner核心特性:

  继承 Requests 的全部特性,轻松实现 HTTP(S) 的各种测试需求;

  采用 YAML/JSON 的形式描述测试场景,保障测试用例描述的统一性和可维护性

  借助辅助函数(debugtalk.py),在测试脚本中轻松实现复杂的动态计算逻辑

  支持完善的测试用例分层机制,充分实现测试用例的复用

  测试前后支持完善的 hook 机制

  响应结果支持丰富的校验机制

  基于HAR 实现接口录制和用例生成功能(har2case)

  结合 Locust 框架,无需额外的工作即可实现分布式性能测试

  执行方式采用 CLI 调用,可与Jenkins 等持续集成工具完美结合

  测试结果统计报告简洁清晰,附带详尽统计信息和日志记录

  极强的可扩展性,轻松实现二次开发和Web 平台化

在HttpRunner 自动化测试项目中,主要存在如下几类文件:

YAML/JSON(必须):测试用例文件,一个文件对应一条测试用例

debugtalk.py(可选):脚本函数,存储项目中逻辑运算函数

该文件存在时,将作为项目根目录定位标记,其所在目录即被视为项目工程的根目录(当前工作目录CWD)

该文件不存在时,运行测试的路径将被视为当前工作目录CWD

测试用例文件中的相对路径(例如.csv)均需基于当前工作目录CWD

运行测试后,测试报告文件夹(reports)会生成在当前工作目录CWD

.env(可选):存储项目环境变量

.csv(可选):项目数据文件,用于进行数据驱动

reports(自动生成):运行后自动生成,无需创建

 

上一篇:HttpRunner(8):接口关联


下一篇:【httprunner】环境配置