Httprunner使用之单接口测试

393 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

前言

刚接触到自动化测试时,了解的更多的是RobotFramework 和Python的request+pytest搭建的自动化框架。

RF 可以让无代码基础的人通过类似填写excel的方式去实现自动化,降低的自动化的准入门槛,但是在针对一些需要使用自定义方法的场景就没那么友好了。

request+pytest 则更灵活的支撑了一些特殊的场景,能够让你更加便捷的去实现定制化的功能,当然这需要你有一定的代码能力。同时你需要做好用例的分层,用例的维护。

Httprunner简介

httprunner是一款非常好用接口自动化测试框架,无代码基础的可以通过yaml维护一份接口自动化回归测试用例,有代码基础的可以通过实现一些方法来支撑你的业务自动化测试。

通过自动化来实现CI、CD(持续集成),以此来保障项目的稳定迭代,减少上线前的手工回归测试,减少线上BUG。

如何使用httprunner

在工作过程如果只使用httprunner进行接口自动化肯定是有所欠缺的,因为各公司使用的技术栈有所不同,所以对httprunner进行二次开发是很有必要的,所以本教程使用httprunner的开发者模式进行。

环境搭建

1、Python环境的搭建自行百度 2、httprunner环境搭建 下载依赖包

$ pip intstall -i https://pypi.douban.com/simple/ httprunner

下载httprunner源码

$ pip install git+https://github.com/HttpRunner/HttpRunner.git@master

如果源码下载速度慢的话可以参考: blog.csdn.net/TeFuirnever…

3、删除一些不需要的目录

在这里插入图片描述

测试demo

新建如下图所示目录结构,用于存储测试用例

其中debugtalk.py 存储项目中逻辑运算辅助函数,名字位置固定使用,详情见httprunner官方文档 在这里插入图片描述 测试用例,测试快递100接口 demo.yaml

- config:
    name: test kuaidi100 api
    base_url: http://www.kuaidi100.com

- test:
    name: test kuaidi100 one
    request:
      url: /query
      method: GET
      params:
        type: huitongkuaidi
        postid: ${get_number()}


辅助函数 debugtalk.py

def get_number():
    return 1234556

然后执行测试用例,查看报告:

hrun project/demo/testcase/demo.yaml