如何对1个接口进行接口测试
一、单接口功能测试
1、接口文档信息
理解接口文档的内容:
请求URL:
https://[ip]:[port]/xxxserviceValidation
请求方法: POST
请求参数: serviceCode(必填), servicePsw(必填)
响应参数: status, token
2、编写测试用例
2.1 正常情况测试
用例1: 使用正确的serviceCode和servicePsw
预期结果: status=200, 返回有效token
# 接口请求
{
"serviceCode":"正确xxxxxx", "servicePsw":"正确xxxxxx",
}
# 接口响应
{
"status":"200",
"token":"91a064fe-e17c-4910-90e0-e3d00fda2ca3"
}
2.2 异常情况测试
异常需从以下方面设计测试用例
注意点:多参数注意组合,如两个字段为空验证,需验证都为空、1为空、2为空
必填参数缺失:不传必填参数,如{key:"value"}全部不传
参数值为空:传空字符串,如{key:""}
错误参数值:参数错误,如{key:"###特殊字符"}和类型错误{key:value}
超长参数:例中接口无要求,如文本框要求输入要求8-200限制,{key:"超出200"}
超短参数:例中接口无要求,如文本框要求输入要求8-200限制,{key:"3位123"}
必填参数缺失用例:
serviceCode为空,预期结果: status=300, 无token返回
# 接口请求
{
"servicePsw":"正确xxxxxx",
}
# 接口响应
{
"status":"300",
}
参数值为空用例:
serviceCode为空,预期结果: status=300, 无token返回
# 接口请求
{
"serviceCode":"", "servicePsw":"正确xxxxxx",
}
# 接口响应
{
"status":"300",
}
错误参数值用例:
serviceCode错误,预期结果: status=300, 无token返回
# 接口请求
{
"serviceCode":"错误xxxxxx", "servicePsw":"正确xxxxxx",
}
# 接口响应
{
"status":"300",
}
3、测试用例执行
如下图对接口进行测试
执行测试用例:参数appkey为空校验
预期:响应体应返回“请输入appkey”
实际:非法访问,与预期不符合
二、注册接口功能测试
1、接口文档信息
参数规则说明:
username:
1、字母、数字组成
2、长度2~20位
3、字母不区分大小写
password:
1、长度8~20位
2、必须含有字母和数字
email:
标准的电子邮件的字符规则
2、编写测试用例
2.1 正常情况测试
输入合法的用户名、密码和邮箱,验证能成功注册并返回正确的userid。
2.2 异常情况测试
1、用户名不符合规则:
输入非字母数字组成的用户名,验证注册失败并返回相应的错误信息。
输入长度小于2位的用户名,验证注册失败并返回相应的错误信息。
输入长度大于20位的用户名,验证注册失败并返回相应的错误信息。
2、密码不符合规则:
输入不包含字母的密码,验证注册失败并返回相应的错误信息。
输入不包含数字的密码,验证注册失败并返回相应的错误信息。
输入长度小于8位的密码,验证注册失败并返回相应的错误信息。
输入长度大于20位的密码,验证注册失败并返回相应的错误信息。
3、邮箱不符合规则:
输入不符合标准email规则的邮箱,验证注册失败并返回相应的错误信息。
4、参数缺失:
分别缺失用户名、密码、邮箱这三个参数中的一个,验证注册失败并返回相应的错误信息。
5、参数为空:
分别为空用户名、密码、邮箱这三个参数中的一个,验证注册失败并返回相应的错误信息。
6、参数类型错误:
分别将用户名、密码、邮箱的参数类型设为非String类型(如Number),验证注册失败并返回相应的错误信息。
7、额外测试:
分别输入字母相同,但是大小写不同的用户名,验证第一次注册应该成功,其他注册都应该失败。
输入已经存在的用户名或邮箱,验证注册失败并返回相应的错误信息。
输入不同大小写组合的用户名,验证注册成功并返回正确的userid。