动力节点首页 全国咨询热线:400-8080-105

绑定手机号,登录
手机号

验证码

微信登录
手机号登录
手机号

验证码

30天自动登录
微信登录与注册
微信扫码登录与注册

扫码关注微信公众号完成登录与注册
手机号登录
首页 > 文章

微服务接口测试

08-05 12:47 331浏览
举报 T字号
  • 大字
  • 中字
  • 小字

微服务模式下如何开展接口测试

接口测试属于集成测试范畴,他是单元测试的扩展和延续。它主要的关注点是内部接口功能实现是否完整,比如说内部逻辑是不是正常,异常处理是不是正确。它是单元测试和契约测试的过渡阶段,它是项目单个代码逻辑最终串联形成有价值业务逻辑的桥梁。因此,其作用举足轻重。

接口测试规范化要求

接口测试的质量保证和测试过程的流程化需要通过规范和方法进行指导和约束。我们定制了如下要求(部分内容):

需求存在新增接口或者接口变更时,要求进行新增接口测试案例的编写或存量接口案例的维护;

需求涉及到的存量接口需要进行回归测试;

接口测试覆盖率要求达到100%;

需求测试结束前至少进行一轮接口回归测试,且回归通过率达到100%

测试流程规范涉及从需求提出、脚本编写、执行到测试报告的各个过程。

接口文档。接口文档是接口测试案例设计的依据,接口文档的全面性和准确性决定了接口测试范围的全面性和接口测试结果的正确性、有效性。

接口用例设计。根据接口文档设计接口测试案例,接口测试案例通过接口测试平台进行编写,且需要满足不重不漏原则。

接口用例评审。根据项目实际情况,接口测试案例编写完成后,需组织相关干系人进行案例评审,记录并发送会议纪要。

接口用例执行。需求测试结束前接口测试案例至少在测试环境中执行了一次回归测试,要求案例执行通过率达到100%缺陷管理和测试报告。

脚本纳入回归体系,定时回归,持续保障接口的质量,以及接口质量的持续和及时反馈。

脚本命名规范和编写规范如下(部分内容):

接口命名要求:采用“接口名称_接口描述”进行命名,用于定义唯一接口。

方法命名要求:采用“方法名_描述”进行命名,用于定义唯一方法。

案例命名要求:采用“序号场景操作期望结果”进行命名,用于定义唯一案例。

每个接口测试案例都必须包含至少一个断言;

对于json格式的报文,接口入参和断言响应的预期值需要使用严格的json格式;

swagger脚本导入到接口测试平台时,需要导入.json文件,且文件内容为无BOM的UTF-8编码;

数据初始化和断言的sql必须带where条件,且能唯一定位到期望的数据;

数据库回退的sql必须带where条件,且能唯一定位到需要回退的数据;

影响公共表(如:TBAPCDE_BNK表)或者其他组数据库表(如:资金组)的sql,在数据初始化、回退、接口影响的数据回退、断言回退时必须严格审查;

数据库断言sql中的where条件的主键组合需要放到前面,用于断言失败时快速定位问题;

接口测试用例设计要求

为了保证接口的质量,需要进行全面的接口测试,因此在涉及接口测试用例时需要依赖方法,因此我们总结了接口测试用例的设计要求。

接口测试工具

接口测试过程提效、测试过程自动化需要依赖自动化测试工具,武器不好很难打胜仗。经过调研,市面上很多接口自动化测试工具均无法满足所有的测试要求,因此我们自研了接口自动化测试平台。自动化测试平台具有如下能力:

案例自动生成。http/https接口案例自动化生成和导入。

测试过程集中可视化管理。通过将自动化测试过程web化实现了自动化测试计划、自动化测试用例编写、自动化测试用例执行、自动化测试用例管理和自动化测试报告管理各个过程的可视化。

模拟性能场景。自动化测试实现了通过接口案例模拟性能测试场景的能力。通过使用平台中提供的接口案例,进行并行执行模拟性能场景。

多协议多报文类型支持。支持http/https协议、dubbo协议、socket协议、rabbitMQ协议等协议的自动化测试,并支持对协议的扩展。同时支持xml、json、sop、8583等多种报文类型以及报文类型的扩展。

测试资产有效积累。

自动化调度执行和邮件发送。自动化测试执行通过定时对案例进行调度执行,可对指定的构建版本对应的案例进行自动化的分批、定时调度执行并邮件发送测试报告。

系统质量的可视化反馈。通过对自动化案例的执行结果统计,分析出系统的质量趋势,做到系统质量的持续化反馈。通过根因分析,统计系统问题的根本原因的比例,更有针对性的解决质量问题。

动力节点在线课程涵盖零基础入门,高级进阶,在职提升三大主力内容,覆盖Java从入门到就业提升的全体系学习内容。全部Java视频教程免费观看,相关学习资料免费下载!对于火爆技术,每周一定时更新!如果想了解更多相关技术,可以到动力节点在线免费观看微服务视频教程哦!

0人推荐
共同学习,写下你的评论
0条评论
代码小兵988
程序员代码小兵988

67篇文章贡献228982字

作者相关文章更多>

推荐相关文章更多>

SpringBoot是什么框架

代码小兵99203-29 17:29

简述SpringBoot与Spring区别

杨晶珍08-02 11:09

使用Docker搭建开发环境

代码小兵98808-09 14:38

重启Docker容器命令

代码小兵87208-09 15:04

简述微服务的3个优点

代码小兵69606-10 10:02

发评论

举报

0/150

取消