接口测试用例如何设计
接口测试用例如何设计
接口测试用例的分析
首先在做用例分析之前,可以通过追查公司一年来所有的故障原因,定位问题起因,或者通过与 CTO、产品经理、研发、运维、测试调查,得到质量痛点,还可以分析业务架构、流程调用,以及监控系统了解到业务的使用数据,从而得到质量需求。
得到质量需求之后,通过与产品经理、项目经理、研发总监等对接后得知待测业务范围、业务场景用例、业务接口分析,从而确定公司的测试计划。将测试计划与质量需求结合进行分析,就可以开始进行业务用例的设计,而接口测试用例分析,也在其内。
首先在做用例分析之前,可以通过追查公司一年来所有的故障原因,定位问题起因,或者通过与 CTO、产品经理、研发、运维、测试调查,得到质量痛点,还可以分析业务架构、流程调用,以及监控系统了解到业务的使用数据,从而得到质量需求。
得到质量需求之后,通过与产品经理、项目经理、研发总监等对接后得知待测业务范围、业务场景用例、业务接口分析,从而确定公司的测试计划。将测试计划与质量需求结合进行分析,就可以开始进行业务用例的设计,而接口测试用例分析,也在其内。
质量需求 | 样例 |
---|---|
测试痛点 | 公司的接口一直不稳定影响用户的使用 |
质量反馈 | 最近半年来出现了几次大的故障 |
回归测试 | 每次升级都会影响老的功能 |
测试策略 | 目前公司没有可靠的测试体系 |
重构测试 | 微服务话改造需要有良好的测试体系保证 |
根据接口encoding选择不同的加密方法
class ApiRequest:
def send(self, data: dict):
if “http” == data[“schema”] :
res = requests.request(data[“method”],data[“url”],headers=data[“headers”])
return json.loads(base64.b64decode(res.content))
#通过请求信息的结构体中的encoding
,去选择不同的解密方式。
if data[“encoding”] == “base64”:
return json.loads(base64.b64decode(res.content))
elif data[“encoding”] == “private”:
return json.loads(requests.post(“url”, data=res.content).content)
else:
return json.loads(res.content)
首先需要明确在面对一个加密的响应结果,可以使用什么样的处理方式:
- 如果知道使用的是哪个通用加密算法的话,可以自行解决。
- 如果不了解对应的加密算法的话,可以让研发提供加解密的 lib。
- 如果既不是通用加密算法、研发也无法提供加解密的 lib 的话,可以让加密方提供远程解析服务,这样算法仍然是保密的。