服务端测试

定义:服务端的测试简单来说就是除了前端以外的的测试,

一、服务端测试有两种:
(1)一种是直接对 WEB 或者 APP 的 API 接口进行测试;
  (2)一种是对更后端的数据库、缓存系统、中间件、文件系统、、jar包依赖、输入输出敏感信息等进行测试,核心就是输入输出是否符合服务设计。
二、必备的测试手段包括:

接口测试

性能测试

稳定性测试

异常测试其中稳定性测试中涉及:异常、超时、重试幂等、性能等)

 

三、内容

1、接口测试占据工作工作中的80%

(1).检查接口请求是否正确,返回数据的正确性与格式

(2)检查接口入参的默认值、参数类型、非空校验、以及边界值检查接口的容错性.

(3)所有功能都需要考虑兼容老版本,列表页的接口需考虑排序值

(4)检查接口的性能以及安全性

(5)对于接口内部依赖接口的不可靠性预防(如:依赖的第三方接口超时)

 

四、

1、性能:

a、新老系统的qps,如何预估

b、吞吐量

c、响应时间

d、修改对公共系统是否有影响,如数据库,消息中间件

2、数据:

a、金额计算  精确度

b、接口参数类型

c、备份    

d、数据新旧数据的处理

3、安全

a、敏感测试(脱敏测试)

b、越权访问   (无权限,低权限)

4、依赖测试

jar包

5、系统结构:

a、数据库访问权限  

b、配置文件

c、外部异常:

外部系统异常,数据持久层异常(redis,memcache,db异常),是否捕捉,是否影响主流程?

外部系统异常,调用第三方接口返回失败,异常,超时,是否捕捉,是否影响主流程?

对外部系统异常必须try catch

6、日志

a、生产环境配置文件  (日志级别)

 

五、api服务端测试

手工接口测试

  1. 输入异常:包括入参为特殊字段类型、非法长度、边界值等
  2. 操作异常:例如操作为特殊业务流程、非法修改数据等非正常业务操作
  3. 依赖服务异常:包括访问超时、服务挂掉、异常返回码等场景