unittest实现HTTP接口功能测试

作者:vickygui

一、背景

目前主流的H5页面动态获取内容的方式是采用ajax异步请求后台数据实现实时刷新,实际上就是用GET/POST的HTTP请求后台接口,再将返回的数据(一般是json或xml格式)渲染在页面上,因此保证H5页面接口的功能正确性就成为了页面内容数据正确的关键,普通的H5页面测试通常会采用手工测试的方式,这样只能模拟到正常的场景,对于异常的数据请求是无法覆盖的,并且对于请求参数很多的情况,效率很低,另外还有一部分数据内容接口是无页面的,如外部合作接口,只提供数据,对应的页面由合作方自己来做,则无法采用手工的方式进行测试。

实际上H5页面接口测试与传统的接口测试的基本思路是一致的,就是通过数据准备(包括正常和异常的参数)、接口调用、结果观察这三个流程来验证接口的功能逻辑符合预期,并且对于未预期的异常情况有较好的容错性和鲁棒性,只不过接口的调用参数形式有所不同,如下表所示。

另外在H5页面接口测试中还需要根据接口的实际情况模拟请求的HTTP头部,这些也是验证接口数据和逻辑的一部分,这些都是与传统的接口测试不同的部分。

文章接下来的部分就提供了一种能够完成H5页面接口测试的方法,主要应用于新开发的H5页面接口的功能测试。

二、为什么选择unittest

通过第一部分的阐述,我们对H5页面接口测试的基本流程有了了解,那么为了实现H5页面测试,我们就需要一种工具,它需要有以下功能:

  • 1、进行GET&POST请求调用
  • 2、模拟HTTP头部进行请求
  • 3、方便的构造参数
  • 4、丰富的断言库,对结果进行判断
  • 5、清晰的结果展示,SUCC /FAIL
  • 6、方便的运行和调试,用例FAIL时给出调试信息

以上需求按照优先级排列,其中1和2是必须的,之前的测试工作中都是采用python来进行HTTP请求,原因是python中的requests库能够方便的模拟各种HTTP请求,并且调用非常简洁,因此很自然的想到了用python,而为了能够对结果进行断言并

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值