简介

主要用于Restful风格接口测试,指针对模块或系统间接口进行的测试

  • 单一接口测试

  • 多接口组合逻辑测试

  • 定时自动,生成测试报告

  • 失败通知

    测试用例断言

  • 返回状态码

  • 返回结果

  • 超时时间

基础应用需求

  • Postman 测试用例编写

  • Newman 执行测试用例命令行工具

  • Jenkins 自动化集成

  • Git 测试用例成果物管理

  • Allure 生成测试报告

  • TestLink 测试用例管理

目标

  • 定时自动或手动触发测试,并生成测试报告

  • 测试结果有异常情况通知相关人员

  • 通过环境变量自适配生产或测试环境

  • 可自定义批量传入参数

具体测试

接口测试经常遇到的bug和问题

(1)传入参数处理不当,导致程序crash; n/0; 参数边界

(2)类型溢出,导致数据读出和写入不一致;

(3)因对象权限未进行校验,可以访问其他用户敏感信息;

(4)状态处理不当,导致逻辑出现错乱;

(5)逻辑校验不完善,可利用漏洞获取非正当利益等。

接口测试设计

1)、通用接口用例设计

①、通过性验证:首先肯定要保证这个接口功能是好使的,也就是正常的通过性测试,按照接口文档上的参数,正常传入,是否可以返回正确的结果。

②、参数组合:

③、接口安全:

1、绕过验证,比如说购买了一个商品,它的价格是300元,那我在提交订单时候,我把这个商品的价格改成3元,后端有没有做验证,更狠点,我把钱改成-3,是不是我的余额还要增加?

2、绕过身份授权,比如说修改商品信息接口,那必须得是卖家才能修改,那我传一个普通用户,能不能修改成功,我传一个其他的卖家能不能修改成功

3、参数是否加密,比如说我登陆的接口,用户名和密码是不是加密,如果不加密的话,别人拦截到你的请求,就能获取到你的信息了,加密规则是否容易破解。

4、密码安全规则,密码的复杂程度校验

④、异常验证:

所谓异常验证,也就是我不按照你接口文档上的要求输入参数,来验证接口对异常情况的校验。比如说必填的参数不填,输入整数类型的,传入字符串类型,长度是10的 写11。总之就是你说怎么来,我就不怎么来,其实也就这三种,必传非必传、参数类型、入参长度。

2)、根据业务逻辑来设计用例

Jenkins

作为CI , 主要用于测试整体流程的编排,管理。

  • git 拉取测试用例

  • newman 执行测试用例

  • 配置模版邮件

  • Allure 生成测试报告