美文网首页
[PPJ_23] HttpRunner执行接口测试-基础配置过程

[PPJ_23] HttpRunner执行接口测试-基础配置过程

作者: Fighting_001 | 来源:发表于2018-11-26 15:12 被阅读229次

    目录结构

    一、HttpRunner简介
    二、HttpRunner入门使用
        1.安装HttpRunner
        2.入门使用
            1)测试场景
            2)用例设计
            3)运行测试
            4)测试报告查看
    

    一、HttpRunner简介

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

    GitHub项目:https://github.com/HttpRunner/HttpRunner
    中文使用手册:http://cn.httprunner.org

    框架流程

    原理图

    核心特性

    • 继承Requests的全部特性,轻松实现HTTP(S)的各种测试需求
    • 测试用例与代码分离,采用YAML/JSON的形式描述测试场景,保障测试用例具备可维护性
    • 测试用例支持分层机制,充分实现测试用例的复用
    • 测试用例支持参数化和数据驱动机制
    • 使用skip机制实现对测试用例的分组执行控制(控制执行与不执行)
    • 测试请求支持完善的hook机制(自定义辅助函数进行调用)
    • 支持热加载机制,在文本测试用例中轻松实现复杂的动态计算逻辑
    • 基于HAR实现接口录制和用例生成功能(har2case)
    • 结合Locust框架,无需额外的工作即可实现分布式性能测试
    • 执行方式采用CLI调用,可与Jenkins等持续集成工具完美结合
    • 测试结果统计报告简洁清晰,附带详尽统计信息和日志记录
    • 具有可扩展性,便于扩展实现Web平台化(HttpRunnerManager)

    二、HttpRunner入门使用

    1.安装HttpRunner

    • 安装
    pip install httprunner
    

    本次以Python3环境为准,使用命令 pip3 install httprunner

    • 检验安装效果
    hrun -V
    har2case -V
    

    PS:此处的-V为大写

    httprunner、har2case安装 OK

    2.入门使用

    1)测试场景

    测试接口:http://httpbin.org/get
    接口类型:GET

    2)用例设计

    HttpRunner的测试用例支持两种文件格式:YAML和JSON。
    本次以YAML为例,如下:

    test_httpbin.yml

    - config:
        name: httpbin api test
        request:
            base_url: http://www.httpbin.org
    - test:
        name: get request
        request:
            url: /get
            method: GET
        validate:
            - eq: [status_code,200]
    
    参数说明:

    【config部分】
    config:作为整个测试用例集的全局配置项
    name:接口的名字
    【test部分】
    test:对应单个测试用例
    name:test用例的名字
    request:test用例发送http请求的信息(url,method)
    url:请求的路径(若config中有定义base_url,则完整路径是用base_url+url)
    method:请求方法POST、GET...
    validate:完成请求后,所要进行的验证内容。所有验证内容均通过,则该test用例才算通过,否则算失败

    3)运行测试

    使用hrun执行测试,操作命令为:

    hrun F:\Py_Script\api_testing\HttpRunner_test\test_httpbin.yml
    

    执行以上命令,若出现异常提示:
    ERROR !!!!!!!!!! exception stage: load tests !!!!!!!!!!
    RecursionError: maximum recursion depth exceeded in comparison
    则需要将执行测试时所在的盘符切换到与.yml文件所在路径的相同盘符之下,再执行测试。具体可参看 ==>

    4)测试报告查看

    以上执行测试完成之后,从提示语"Generated Html report: F:\reports\1543166382.html"可知,测试报告生成的绝对路径为F:\reports\1543166382.html
    打开该报告,如下:

    查看log日志:包含有请求和响应的数据

    相关文章

      网友评论

          本文标题:[PPJ_23] HttpRunner执行接口测试-基础配置过程

          本文链接:https://www.haomeiwen.com/subject/sdzmqqtx.html