目录:导读
前言
1、接口常遇见的bug和问题
传入不合规参数,导致程序crash;
数据类型溢出,导致数据读出和写入不一致;
因对象权限未进行校验,可以访问其他用户敏感信息;
状态处理不当,导致逻辑出现错乱;
逻辑校验不完善,可以利用漏洞获取非法利益;
2、测试用例设计
输入- 接口处理逻辑 – 输出-
一个接口通常有输入,输出,有时候输出也是没有的,
用例设计考虑,输入, 输出
针对输入,可以按照参数类型设计;
针对处理,可以按照逻辑进行用例设计;
针对输出,可根据结果进行分析设计;
详情:
针对输入设计:
数值型:
等价类:取值范围内,取值范围外
边界法:取值范围边界:边界最大,最小;边界最小-1,最大+1等
特殊值:0,负值等
遍历法:取值范围的所有数值遍历
举例:一个输入值的范围是int 1-12,需要考虑范围内的值;边界值0,1,12,13;类型的特殊值-1,0;还有int的最小,最大边界值也需要考虑; 如果1-12有指定含义代表,还需要遍历所有数值
风险:特殊值,边界值处理不当,程序退出,数据溢出,返回错误信息等
Int: 数据类型边界:-2147483648 ,2147483648。 (Integer.MAX_VALUE)
字符串型:
字符串长度:
等价法:取值范围内,取值范围外
边界法:规定范围边界,类型边界
特殊值:0,即空字符
字符串内容:
特定类型:英文,中文,大小写等
特殊字符:>,<*!@#$%等
敏感字符