JMETER做接口自动化规范文档【自用】

一、环境统一要求

环境配置:
    【必备环境配置】
        apache-jmeter:5.3
        jdk:1.8
    【批量执行脚本自动化生成测试报告配置】
        RunCase:1.5.4.1
        ant: 1.10.12
    【持续集成配置】
        ant: 1.10.12
        Jenkins:jenkins-2.32.2
        参考文档:https://www.jianshu.com/p/8b33585ccc1c
【注】安装包获取路径: https://hoteamsoft.feishu.cn/drive/folder/fldcnXHYmwIeGR9wPsBynsB98dg

二、基础模板使用

1、全局配置,采用统一脚本处理, 直接拿模板(jmeter接口模板.zip)使用
包含公共内容:JDBC数据库配置 、HTTP请求默认值、HTTP Header、token获取 :[获取](https://download.csdn.net/download/qq_32828053/87400901)

三、数据处理

2、数据处理
数据准备:setUp线程组
    按以下优先级进行数据准备(数据可直接写死在请求body中,无须csv参数化文件):
    a. 通过请求接口获取
    b. 数据库查询
    c. [setUp-登录]:用于登录获取token并设置全局的请求头,可直接使用;
    d. [setUp-公共数据准备]:用于准备一批公共数据,也不需要更改直接使用;
数据清理:tearDown线程组
    统一调用接口进行数据清理,不建议直接删除数据库表,
    因为表之间有复杂的关联关系
    [tearDown-公共数据清理]:用来清理公共的数据

四、用例线程组

3、用例线程组
命名:所属模块-所属功能点
    例如:视图管理-新增视图;
包含内容:
    a. 用例线程组上需要根据用例的数量设置循环次数;
    b. 需要执行的用例文件.csv导入;
    c. 测试用例接口;
    d. 用例数据清理(根据场景调用清理数据接口,必要时可以使用if循环器);
注意事项:
    当前用例组需要特殊前置数据([setUp-公共数据准备]无法提供的)需要自己准备【也可以编写在set-up中】
    当前用例组产生的数据需要清理掉

五、请求/事务命名方式

4、请求/事务命名方式
线程组名称-功能名称-${CASE_NUM}-${CASE_NAME}
CASE_NUM: 用例编号,命名方式:英文+001(三位数字编号,举例TenantAdd001,TenantEdit001)
CASE_NAME:验证场景说明(举例:名称为null,编号重复)
【注】:CASE_NUM、CASE_NAME取自参数化用例文件的内容,只需要在csv脚本维护既可

六、csv参数化文件

5、csv参数化文件
存放位置: 用例数据文件夹下,按功能模块划分
格式:.csv
路径:使用相对路径,可自定义变量存储公共父级路径。当前按照模块统一存放在脚本目录的同级目录的目录下
内容:首行为变量名,以‘,’为分隔符,包括CASE_NUM、CASE_NAME、请求参数、code(期望错误码)

七、接口验证场景

6、接口验证场景
业务功能测试:正常场景覆盖100%;异常场景覆盖30%
参数组合测试(常见过滤查询接口)
多选操作校验(常见删除一个或多个)
唯一性校验(常见名称或编号)
必填性校验(参数有、无或为null)
参数边界值、类型校验(部分是通过前端控制,接口可不校验)

八、响应断言

7、响应断言
基础校验:仅校验code错误码
业务校验:可调用接口或数据库查询进行辅助校验
举例:对于编辑接口,一是校验编辑成功后返回的code正确,二是可调用过滤查询接口,校验编辑后的信息确实已更新

九、脚本注释

8、脚本注释
线程组注释:添加线程组的功能说明
请求注释:添加请求的参数变量说明

十、脚本命名规则

9、脚本命名规则
一个功能菜单的所有接口写在一个.jmx脚本中,脚本名称以功能模块命名,如 租户管理.jmx

十一、脚本存放说明

10、脚本存放说明
    -项目目录名称
        -脚本目录
            -脚本(每个脚本是一个模块)
        -脚本用例参数目录
            -脚本用例参数文档.csv
            导入导出文件目录
        -使用说明文档
        -jmeter快速执行文档【根据实际情况】

十二、项目脚本管理

11、项目脚本管理
    a. 统一使用Git进行脚本管理
    b. 所有更新/新增的脚本不会直接合并到master分支,需要审核通过才能合并;git地址:http://XXXXX/autotest/tcljmeterapi

十三、使用文档说明

12、使用文档说明
主要标注执行方式,其他文档的存放位置等,或者创建bat执行文件
技术参考文献:【暂定】

十四、命名规范

命名规范
统一目录命名:
    --jmx:存放测试脚本
    --模块名称+用例数据:存放用例文件和模块导入导出等文件
统一脚本名称:
    --模块名称+接口测试.jmx
统一线程组命名:
    --setup/teardown线程组:存放公共准备数据:setup/teardown-线程组作用(登录、公共数据准备、公共数据清理)
    --用例线程组:模块下细分模块名称-用例名称
统一接口请求名称:
    --公共数据准备/清理接口:setup/tearDown-接口描述-标识
    --用例接口:模块下细分模块名称-用例名称-${CASE_NUM}-${CASE_NAME}
统一用例csv文件:
    --格式:csv文件
    --命名:模块名称+用例数据.csv
    --内容包含CASE_NUM、CASE_NAME、code等值
    --文件中需要使用baenshell替换的数据统一使用NA/MA替换
统一逻辑控制器命名:
    --业务场景放到事务控制器:业务场景
    --参数场景放到事务控制器:参数场景
    --前置数据/后置数据放到事务控制器:setup/teardowm-数据准备/数据清理
    --if判断控制器:描述判断内容
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值